javascript - 使用javascript将文本区域的输入与div中的文本进行比较

标签 javascript html string textarea

我尝试了以下代码来比较来自 div 元素和来自 textarea 元素的字符串。虽然我在 textarea 中给出了正确的输入,但代码只执行“else”语句。请帮助我处理此代码。

function matchIt() {
    var inputstr = (document.getElementById("answerarea")).toString();//textarea element
    var displaystr = (document.getElementById("text")).toString();//div element
    var res = inputstr.localeCompare(displaystr);

    if(res==0)
    {
        alert("you won");
    }  
    else
    {
         alert("you loose");
    }
}

我试过

  • if(res===0)
  • (this.(document.getElementById("text"))).toString(); 没有给出输出。

此外,当我尝试使用相同类型的元素(如 h1p 的字符串时,它会给出正确的输出..

最佳答案

要访问 textarea 的值,您必须使用 .value(它已经是一个字符串),并访问 的文本内容div,你应该使用 .textContent 属性。

var inputstr = document.getElementById("answerarea").value; //textarea element
var displaystr = document.getElementById("text").textContent; //div element

无需转换为字符串 - 它们已经是字符串。

此外,不要使用 localeCompare 检查字符串是否相等,只需使用 ===:

var inputstr = document.getElementById("answerarea").value;
var displaystr = document.getElementById("text").textContent; 
console.log(inputstr === displaystr);
<textarea id="answerarea" value="foo">foo</textarea>
<div id="text">foo</div>

关于javascript - 使用javascript将文本区域的输入与div中的文本进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50266990/

相关文章:

javascript - node.js 目录搜索具有名称的文件

PHP/JavaScript - 检测哪些用户当前打开了页面

javascript - 仅刷新包含分页的侧边栏

HTML 表单、字符集和 accept-charset 属性

javascript - 如何修复javascript keydown中的延迟

c# - 使用插值 vs "+"运算符连接字符串的内存使用情况

javascript - jQuery UI 对话框仅打开一次

javascript - 设置 Jekyll 站点

python - 当行包含特定文本时计算行数

string - Lua 字符串长度(utf8 中的西里尔字符)