避免使用.not选择器聚焦具有属性readonly的文本框

时间:2016-02-29 07:49:22

标签: jquery html

我有一个带有文本字段的HTML表格。点击这些文本框内的输入时,焦点将转移到未禁用或隐藏的下一个输入。我使用以下代码选择这些输入:

var $focusable = $(focusable)
    .not(":disabled")
    .not(":hidden")
    .not("a[href]:empty"); 

这很好用。我的问题是我想跳过具有属性readonly的聚焦文本框。我尝试将.not(":readonly")添加到代码中,但它返回错误:

  

无法识别的表达

如何避免使用具有readonly属性的文本框?

1 个答案:

答案 0 :(得分:1)

没有:readonly选择器。相反,您应该使用属性选择器来获取只读元素,如下所示:

var $focusable = $(focusable).not('[readonly], :disabled, :hidden, a[href]:empty"); 

请注意,我将所有选择器合并到一个方法调用中。