如何使用JQuery在网页上查找所有只读文本框

时间:2011-11-02 12:31:50

标签: jquery

我被要求识别Asp.Net页面中的所有只读文本框并指定特定样式。我很确定我可以迭代所有输入,看看它们是否是带有readonly属性的文本框的输入,但我只知道有一个单行。

有什么想法吗?

4 个答案:

答案 0 :(得分:22)

这是你要找的吗?

$('input[type=text][readonly]')

http://jsfiddle.net/rZvnm/

答案 1 :(得分:6)

从技术上讲,这应该足以限制只读文本输入:

$(':text[readonly]'); // equivalent to $('*:text[readonly]')

但如果是我,我想更具体一点,并且包含一个标签(jQuery也推荐它):

$('input:text[readonly]');

同样根据jQuery documentation,在现代浏览器中使用类型属性选择器而不是:text会更快:

$('input[type=text][readonly]');

我使用[readonly]而不是[readonly=readonly]来测试属性的存在,而不是它的值。

答案 2 :(得分:4)

$.extend($.expr[':'],{
    readonly: function(obj) {
        return $(obj).is('[readonly]');
    }
});

 $('input:text:readonly');

这是我找到的最佳方式。

答案 3 :(得分:2)

尝试下面的

$('input[Type="text"]&[readonly="readonly"]')