1

我在使用特定的 javascript 时遇到问题。我的代码应该在文本区域中找到一个特定的字母,由一个人选择和编写。我需要帮助计算我的特定字符。

function search(){

    var s= document.getElementById("find").value;
    document.getElementById("letter").value= s;

    var t= document.getElementById("text");
    var c= document.getElementById("find").text;
}

(这是我当前的代码)

4

2 回答 2

2

您可以根据需要转换 html 元素的 id。

HTML :-

function search(){

    var textareaValue = document.getElementById("text").value;
    //console.log(textareaValue);
    
    var characterToSearch = document.getElementById("characterToFind").value;
    //console.log(characterToSearch);
    var count = 0;
    for(var i = 0; i < textareaValue.length; i++){
    	if(characterToSearch == textareaValue[i]){
      	count++;
      }
    }
    document.getElementById("totalCharacters").innerHTML = count;
    /*
    document.getElementById("letter").value= s;

    var t= document.getElementById("text");
    var c= document.getElementById("find").text;
    */
}
<label>Textarea</label> <textarea id="text">
</textarea>
<br>
<label>Enter character to find</label>
<input type="text" id="characterToFind">
<br>
<input type="button" onclick="search();" value="Search">
<br>
<label>Characters Found : </label><label id="totalCharacters"></label>

于 2017-05-24T08:55:28.957 回答
1

我过去曾将 RegExp 用于此类事情,但它可能不是最高效的解决方案:

var charCount = (text.match(RegExp(letter, "g")) || []).length;

您还应该验证它实际上是正在搜索的字母,否则您必须转义 RegExp 中的控制字符

于 2017-05-24T08:41:28.417 回答