gpt4 book ai didi

javascript - 如何更好地在 JQuery 中选择具有不同属性值的多行

转载 作者:行者123 更新时间:2023-11-30 12:55:41 24 4
gpt4 key购买 nike

我有一个包含很多行的表格。每行都有一个名为“row_id”的属性我在下面还有一个查询,它将为我提供我正在寻找的行。虽然这行得通,但我真的很想用一种更短的方式来编写这个查询。

var rows = jQuery("tr[row_id='apple'], tr[row_id='banana'], tr[row_id='cherry']");

同样,上面的方法确实有效,但是有没有一种方法可以用更少的代码来编写它?如果我只需要写 tr[row_id=' 一次......而不是一遍又一遍,那就太好了。

澄清:我每次都会寻找一组不同的 row_id。我不会寻求获取仅具有 row_id 属性的每个表行。

最佳答案

您也可以使用过滤器

var rows = jQuery('tr[row_id]').filter(function(){
return /apple|banana|cherry/i.test(this.getAttribute('row_id'));
});

Fiddle

您也可以通过这种方式使其更通用:

var list= ["Apple", "banana", "cherry"]; //get the array of matches you need
var regexp = new RegExp("^(" + list.join('|') + ")$", "i"); //create the expression.


var rows = jQuery('tr[row_id]').filter(function(){
return regexp.test(this.getAttribute('row_id')); //test it
});

Demo

或者用同样的东西让你的选择器在运行中:

var list= ["apple", "banana", "cherry"];
var selector = 'tr[row_id=' + list.join('], tr[row_id=') + ']';

var rows = jQuery(selector);

Demo

关于javascript - 如何更好地在 JQuery 中选择具有不同属性值的多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19235085/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com