我有一个相当数量的复选框的应用程序。它们中的每一个都具有指示它们属于哪个组的jQuery数据参数,例如, <input type="checkbox" class="show" data-group="zones" />
jQuery选择器可以根据数据查找元素吗?
在某些情况下,我想根据它们包含的数据选择这些复选框的子集。 jQuery选择器可以拉这个吗?如果没有,有没有其他方法可以做到手动过滤?
我有一个相当数量的复选框的应用程序。它们中的每一个都具有指示它们属于哪个组的jQuery数据参数,例如, <input type="checkbox" class="show" data-group="zones" />
jQuery选择器可以根据数据查找元素吗?
在某些情况下,我想根据它们包含的数据选择这些复选框的子集。 jQuery选择器可以拉这个吗?如果没有,有没有其他方法可以做到手动过滤?
当然,一个方法就是
$("input[data-group='zones']");
更新:
更改数据的价值也可以像这样
$("input[data-group='zones']").each(function() {
$(this).data('group', 'newzone');
});
看看http://api.jquery.com/category/selectors/,也可能帮助他! – 2012-04-23 07:05:24
的确,我想到了这一点,但是按HTML元素的data- *属性过滤,而不是在Javascript中元素的实际数据。例如,如果我要通过Javascript在元素上设置一些数据并尝试使用这种方法,那么就会失败。 @AllanKimmerJensen我已阅读文档:-) – Hubro 2012-04-23 07:05:38
@Codemonkey,如果您想更改数据,IT也不会失败。等待我的更新 – Starx 2012-04-23 07:08:26
做研究了一下后,有也是另一种方法,使用过滤器()
var inputs = $('input').filter(function() {
return $(this).data("groups") == true
});
下一页操纵整个
inputs.each(function() {
$(this).data('groups', 'new zone');
});
或者修改单个元素
inputs[0].data('groups', 'new zone');
+1,让我们看看,如果我们得到更多的答案,这个 – Starx 2012-04-23 07:18:33
你能表现出什么样的建议选择应该看起来像? – Starx 2012-04-23 07:25:04
我在想'$(“input:data('group'='zones')”);',或者甚至是$(“input”)。dataEquals('group','zones');'' – Hubro 2012-04-23 07:28:09