javascript - 使用:contain in list

标签 javascript jquery debugging syntax syntax-error

通过这样做我得到了我想要的:

$('#stats_0 li:contains("Speed")').text();

但是,我必须在我刚刚通过 id 获得的同一列表中查询速度以外的其他特征。因此,为了不让 jQuery 在整个 DOM 中困扰,我想缓存列表,然后应用过滤器。

我尝试过:

var list = $('#stats_0');
var txt = $(list).('li:contains("Speed")').text();

但我收到语法错误:

Uncaught SyntaxError: Unexpected token (

我应该如何进行? ref没有帮助我。

最佳答案

function('...').('...') 不是有效的 JavaScript 语法。调用运算符(())应该用在函数之后来调用该函数。您正在寻找 find 方法:

list.find('li:contains("Speed")').text();

另请注意,无需将 list 传递给 jQuery 构造函数,因为 list 已经是一个 jQuery 对象。如果将 jQuery 对象传递给 jQuery 构造函数,jQuery 不会提示,它会返回相同的对象,但这样做是不必要的,也没有多大意义。

<小时/>

您可以在您的情况下使用的另一个选项是缓存目标 li 元素并使用 filter 方法:

var $list = $('#stats_0 li');
var txt = $list.filter(':contains("Speed")');

关于javascript - 使用:contain in list,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33600148/

相关文章:

javascript - jQuery 扩展事件变量

iphone - 在 iPhone Safari 上调试网站

c - 如何在 VS Code 调试 session 中持续观察变量及其值?

c - 如何使用 Visual Studio 调试 SQLite 源代码

jquery - 如何将多维数组序列化为字符串以及相反?

javascript - 如何通过数据属性过滤选择器结果?

javascript - 创建扩展时出现 Qlik Sense 错误

javascript - 无法对齐 svg :g of d3 element inside the div

javascript - 单击按钮时如何获取输入值

javascript - kendo dropDownList onclick 文本更改事件未触发