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

时间:2012-06-15 09:28:00

标签: jquery .net access-keys

我想选择所有在其上定义了accesskey的元素。

我知道我可以这样做:$('[accesskey]'),但这会在页面上给我很多输入,href等等(大多数都有一个空的访问键)。

仅选择accesskey实际具有值的元素的方法是什么?

编辑:我发现空的accesskeys的原因也是由多个模态对话框中的一些旧的禁用/恢复accesskeys javascript函数引起的..通常你不会用空的accesskeys获得那么多的元素

3 个答案:

答案 0 :(得分:2)

有一个选择器:

$('[accesskey][accesskey!=""]').foo

它是如何运作的:

// Has the accesskey attribute defined.
[accesskey]

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

一起它会选择每个具有accesskey属性且不为空的元素。

答案 1 :(得分:1)

你可以这样做

$('[accesskey]').filter(function(){
    return $(this).prop('accessKey');
});

.filter()或其他人已经说过你可以使用attribute-not-equal-selector

<强> Working sample

答案 2 :(得分:0)

你可以使用和额外的循环

$("[accesskey]").each(function() {
    if($(this)).attr('accesskey').length > 0) {
        // do it
    }
}

我希望它能帮到你