Jquery选择定义了accesskey的所有元素

Jquery选择定义了accesskey的所有元素,jquery,.net,access-keys,Jquery,.net,Access Keys,我想选择所有定义了accesskey的元素 我知道我可以这样做:$(“[accesskey]”),但这会在页面上给我很多输入、HREF等(其中大多数都有空的accesskey) 如何仅选择accesskey实际具有值的元素 编辑:我也发现了空accesskeys的原因,是由多模式对话框上的一些旧的禁用/恢复accesskeys javascript函数造成的。。通常情况下,如果accesskey为空,则不会得到那么多元素 $('[accesskey]').filter(function(){

我想选择所有定义了accesskey的元素

我知道我可以这样做:
$(“[accesskey]”)
,但这会在页面上给我很多输入、HREF等(其中大多数都有空的accesskey)

如何仅选择accesskey实际具有值的元素

编辑:我也发现了空accesskeys的原因,是由多模式对话框上的一些旧的禁用/恢复accesskeys javascript函数造成的。。通常情况下,如果accesskey为空,则不会得到那么多元素

$('[accesskey]').filter(function(){
    return $(this).prop('accessKey');
});
或者像其他人已经说过的那样,你可以使用


您可以使用和附加循环

$("[accesskey]").each(function() {
    if($(this)).attr('accesskey').length > 0) {
        // do it
    }
}
我希望它将通过一个选择器帮助您:

$('[accesskey][accesskey!=""]').foo
它是如何工作的:

// Has the accesskey attribute defined.
[accesskey]

// Doesn't have an empty value for the accesskey attribute.
[accesskey!=""]

一起它选择具有
accesskey
属性的每个元素,并且它不是空的。

您可以查看此帖子@Subhajit:那篇文章是关于属性存在的。我的问题是关于一个应该有值的属性,而不仅仅是它的存在。@thecodeparadox,谢谢<代码>属性正在修复该问题。我认为
attr
prop
是可以互换的。你能纠正我吗?@gdoron,谢谢你,先生,我很快就会纠正的。@code。顺便说一句,问题是你的小提琴,
prop
很好用。。。请不要告诉别人他们“完全错了”,特别是当他们没有错的时候(joy,如果您使用的是
prop
,您确实需要将
accesskey
更改为
accesskey
,属性区分大小写,而属性则不区分大小写。祝你们好运…@gdoron,感谢您的澄清,明白了。:@ErikDekker。没问题,我很乐意帮忙。