0

Is it possible to get the number of each word of string inside textarea. Like, 'I like Apple' string inside textarea, when I click on 'I' it should give 0, and 'like' ->1 and 'Apple' -> 2. Not letter wise, word wise.

<textarea>I like Apple</textarea>
  • https://stackoverflow.com/questions/18679576/counting-words-in-string – Shocky May 27 '22 at 13:44
  • if you want to know the value you can give the textarea an Id on do something like: document.getElementById("myTextarea").value – Shocky May 27 '22 at 13:47
  • @Shocky I don't want to count them. I just want to learn that if when user click on a word of string then it should display the number of that word in the string. – Jack Hickson May 27 '22 at 13:50

1 Answers1

0

You can find the word number/index according to the string by this also:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"> 
</script>
<input type="text" id="checktext" value="This is the string to check words index" />

JS code:

$(document).ready(function() {
      $("#checktext").on('click', function(e) {
        var text = document.getElementById("checktext").value,
          element = $("#checktext")[0],
          arr1 = text.split(" "),
          length = 0,
          selectIndex = element.selectionStart;
        if (selectIndex == 0){
          console.log(arr1.indexOf(arr1[0]));
        }
        else {
          for (var i = 0; i < arr1.length; i++) {            
            length = length + arr1[i].length + 1;
            if (length == selectIndex) {
              console.log(i + 1);
              break;
            }
          }
        }
      });
    });

Hope this solved your issue!