首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >遍历lis,如果文本包含,.click();

遍历lis,如果文本包含,.click();
EN

Stack Overflow用户
提问于 2020-02-24 02:47:12
回答 2查看 39关注 0票数 0

我正在尝试下面的操作,但是"World“失败了:在控制台中,它在my操作符之后解析为false

代码语言:javascript
复制
   var liz = document.querySelectorAll(".__item--selected")[0];

      if(liz.innerHTML.indexOf("SkyFall" || "World") !== -1) {
        custom= liz.title;
        console.log("found " + custom);
      } else  { ....... }

第2部分:

我想迭代一遍lis和click();的列表,这个li有匹配的custom变量的innerText

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-02-24 02:51:35

通过匹配方法使用正则表达式:

代码语言:javascript
复制
var liz = document.querySelectorAll(".__item--selected")[0];

      if( liz.innerHTML.match(/SkyFall|World/) ) {
        custom= liz.title;
        console.log("found " + custom);
      } else  { ....... }

注释:也考虑到@Scott的注释,以及您是否真的想查看元素的textContent。

最大的超速驾驶是一部非常棒的电影!

票数 2
EN

Stack Overflow用户

发布于 2020-02-24 02:51:11

if条件必须是完整的。您必须完整地写出这两个测试条件。

而且,document.querySelectorAll(".__item--selected")[0]也没有意义。如果您知道要进行第一次匹配,请使用.querySelector()

此外,如果您正在测试纯文本而不是HTML,请不要使用.innerHTML,使用.textContent

代码语言:javascript
复制
var liz = document.querySelector(".__item--selected");

if(liz.textContent.indexOf("SkyFall") !== -1 || liz.textContent.indexOf("World") !== -1) {
    custom= liz.title;
    console.log("found " + custom);
} else  { ....... }
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60368929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档