【问题标题】:How to check if a div contains a certain word and check if that certain word matchs a var?如何检查 div 是否包含某个单词并检查该单词是否与 var 匹配?
【发布时间】:2014-09-17 09:34:19
【问题描述】:

所以我正在使用 Node.JS 并做一个小型多人项目。

当然,我在很多事情上都使用 JavaScript。
我想检查 div 是否包含某个单词,以及该单词是否与变量匹配。

我将如何使用 JavaScript 做到这一点?

我想要类似的东西:

var teststring = "hi";
if "<div id="test">" contents matches "teststring"
{

}

我也有 jQuery,所以这也是一个选项!
我是 JavaScript 新手,所以请开火!

这是我的尝试,但没有成功:

var socket = io.connect('http://*');
socket.on('field', function (data) {
    if ($("#userid").text().indexOf(data) > -1)
    {   
        window.alert('lol');    
        console.log(data);
        $("#field").html(data);
    }
    else
    {
        window.alert("Something has gone wrong with the node server...");
    }
});

【问题讨论】:

  • if( document.getElementById('test').textContent.indexOf(teststring) &gt; -1) 应该这样做...
  • 这是在浏览器中还是在 Node 中?我猜它在客户端,只是不知道你为什么提到 Node ?
  • if ($("#test:contains('" + teststring + "')").length) {}

标签: javascript jquery node.js


【解决方案1】:

只要用jQuery的text()函数检查div的内容,像这样:

var teststring = "hi";
if ($("#test").text().indexOf(teststring) > -1)
{
    alert("Match!");
}

【讨论】:

  • 与我的评论基本相同,但浏览器兼容性略高(innerText 内部使用)和一千多条指令来处理 XD +1
  • @user3818791 究竟是什么不起作用?请提供一个小提琴。
  • @user3818791 您的回复中data 包含什么内容?
  • 来自节点的数据(消息)
  • 您的代码中有一行console.log(data);。它在控制台中说了什么?
【解决方案2】:

要获取 div 的值,您可以使用

var divValue = $('#test').text();

var teststring = "hi";

并与变量匹配;

   if(divValue === teststring ){

      alert('Two variables are matching !!');

   }

并且要搜索包含可以使用的子字符串的字符串;

 if (divValue.indexOf(teststring ) >= 0)
  {
    alert('Two variables are matching !!');
   }

请访问http://jsfiddle.net/dennypanther/ojmyobL8/

【讨论】:

  • "包含某个单词"
  • 那是比较整个div的内容,包括html标签。问题是关于 div 包含一个词。
  • ZiNNED - 仅当
    包含子 div 时,它才会比较 html 标签。但问题是提到“一个 div 包含某个单词”。
【解决方案3】:

在 JavaScript 中你可以这样做:

var teststring = "hi";
var div=document.getElementById('test').innerHTML;
if(div.indexOf(testString) > -1 ){
     // your code  goes here 
 }

【讨论】:

  • 那是比较整个div的内容,包括html标签。问题是关于 div 包含一个词。
  • 在这种情况下使用.innerHTML 代替.textContent 不是一个好主意。
猜你喜欢
  • 1970-01-01
  • 2012-03-26
  • 1970-01-01
  • 2018-04-17
  • 2021-05-20
  • 1970-01-01
  • 2020-07-06
  • 1970-01-01
  • 2015-10-03
相关资源
最近更新 更多