0

我想readonly使用 jQuery 更改属性的值,但是这段代码不起作用:

$('#L1E').live('change',function() {
  $('.hidden').attr('readonly',''); 
  return false;  
});

有谁知道为什么?

4

2 回答 2

2

您应该使用 .on (jQuery 1.7+) 委托而不是 .live,因为 .live() 已被弃用。您还应该使用 .prop (jQuery 1.6+) 方法来设置只读属性

$('body').on('change','#L1E', function() {
    v = $('.hidden').prop('readonly')
    if (v) {
        $('.hidden').prop('readonly', false);
        alert(v);
    }
    else {
        $('.hidden').prop('readonly', true);
        alert(v);
    }    
    return false;
});​

http://jsfiddle.net/rMnx3/

于 2012-11-14T20:07:27.387 回答
1

您应该使用 removeAttr 删除只读属性:

$('.hidden').removeAttr('readonly');
于 2012-11-14T20:07:26.357 回答