我想在输入具有'readonly'属性时发出警报.我试过这个:
if($('input').attr('readonly') == 'readonly'){
alert("foo");
}
Run Code Online (Sandbox Code Playgroud)
我认为'如果'甚至不是最好的方法.
Ric*_*gan 127
最快的方法是使用.is()jQuery函数.
if ( $('input').is('[readonly]') ) { }
Run Code Online (Sandbox Code Playgroud)
使用[readonly]作为选择器将只检查该属性的元素上定义的.如果你想检查一个值,你可以使用这样的东西:
if ( $('input').is('[readonly="somevalue"]') ) { }
Run Code Online (Sandbox Code Playgroud)
小智 21
从JQuery 1.6开始,总是使用.prop()在这里阅读原因:http://api.jquery.com/prop/
if($('input').prop('readonly')){ }
Run Code Online (Sandbox Code Playgroud)
.prop()也可用于设置属性
$('input').prop('readonly',true);
$('input').prop('readonly',false);
Run Code Online (Sandbox Code Playgroud)
没有 jQuery 的 javascript 怎么样?
对于使用或不使用 jQuery 可以获得的任何输入,只需:
input.readOnly
Run Code Online (Sandbox Code Playgroud)
注意:介意驼峰式
检查“readonly”属性的当前值,如果它是“false”(字符串)或空(未定义或“”),则它不是只读的。
$('input').each(function() {
var readonly = $(this).attr("readonly");
if(readonly && readonly.toLowerCase()!=='false') { // this is readonly
alert('this is a read only field');
}
});
Run Code Online (Sandbox Code Playgroud)