HTML DOM检查元素的文本是否包含特定文本?

时间:2017-03-28 00:18:25

标签: javascript html

如何检查元素的innerHTML是否包含“as me to”(整个短语,而不仅仅是包含其中一个单词)?
我知道它很短,但问题已经在标题中说明了。

3 个答案:

答案 0 :(得分:0)

你可以使用indexOf()

foreach($json['offers'] as  $offeritem)
{
$opOffer[$offer_cnt] = array("title" => array($offeritem['title']), "link" => array($offeritem['link'])); 
$offer_cnt++;
if ($offer_cnt == $max_offers) break;
};

如果结果为-1则没有"的实例为"在给定的字符串中。

答案 1 :(得分:0)

您可以使用RegExp进行检查。如果元素已给出字符串,test()函数将返回truefalse,如果不是。

function check(elem, str) {
  var element = document.getElementById(elem).innerHTML,
      rg = new RegExp(str, 'g'),
      res = rg.test(element);
      console.log(`Does the ${elem} element contains ${str} - ${res}`);
      return res;
}

check('p', 'as');
check('p', 'something');
<p id='p'>ashamed</p>

答案 2 :(得分:0)

试试这个!

HTML

<div id="source">this word as </div>

JAVASCRIPT

var sourceEl = document.getElementById('source');

if (sourceEl.textContent.includes('as'))
{
alert("Exist");
}

https://jsfiddle.net/n3zkzy1g/5/