javascript - jQuery选择器属性范围

标签 javascript jquery jquery-selectors

我有一个包含一些行和列的表格,每个行都有一个属性:

<tr attr-y="1"><td attr-x="1">...</td><td attr-x="2">...</td>...</tr>
<tr attr-y="2"><td attr-x="1">...</td><td attr-x="2">...</td>...</tr>
....

现在我想编辑其中一些单元格并尝试按范围选择它们,例如。 (attr-y 介于 3 和 5 之间,attr-x = 4)

$('#mytable tr[attr-y>3][attr-y<5] td[attr-x=4]')

但这给了我该列中的所有单元格。

我可以直接选择单元格(使用选择器语句)吗?

最佳答案

您可以使用.filter()执行更复杂的查询:

$('#mytable td').filter(function() {
    return ($(this).parent().attr('attr-y') > 3 && $(this).parent().attr('attr-y') < 5)
        && ($(this).attr('attr-x') == 4)
})
.css('background-color', 'aqua');

示例:http://jsfiddle.net/8wH4M/1/

关于javascript - jQuery选择器属性范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25129080/

相关文章:

javascript - jQuery 选择器中的正则表达式不接受\d?

javascript - 将 jQuery 事件应用到两个 DOM id 的选择器

javascript - 无法使用传递给 "npm start"的参数配置 React Pre Hook

javascript - 如何检查此元素是否存在以防止未定义错误的属性

jquery - 在从 XML 填充的 jQuery 对象中查找 CSS 类

javascript - 在 Javascript 中从 JSON 数据中检索数据

javascript - JavaScript 中的闭包内存泄漏模式

javascript - Chrome 有时在重绘之前不会呈现 Google 字体

jquery - jQuery livequery 插件的替代品?

jQuery 选择器问题