切换输入只读解释

时间:2017-06-28 07:44:55

标签: javascript jquery toggle readonly

我想在Div中切换所有输入的readonly属性。 我找到了一些解决方案,但只有一个解决了。

我想知道为什么这段代码不起作用:

$("#" + id + " :input").each( function() {
       $(this).readOnly = !$(this).readOnly;
});

这是工作代码:

$("#" + id + " :input").each( function() {
    (this).attr("disabled", function(i, d) {
      return !d;   
    });
});

有人可以向我解释一下吗?

1 个答案:

答案 0 :(得分:0)

您可以尝试:Working Fiddle

我们可以使用jquery prop来切换readonly attriblute。

HTML:

<input  type="button" id="btnToggle" value="Toggle" />
<div id="divToggle">
  <label>First:</label><input type="text" id="txtFirst" /><br/>
  <label>Second:</label><input type="text" id="txtSecond" /><br/>
  <label>Third:</label><input type="text" id="txtThird" /><br/>
</div>

jQuery的:

$("#btnToggle").click(function(){
  var id="divToggle";
  $("#" + id + " :input").each( function() {
      $(this).prop("readOnly",!$(this).prop("readOnly"));
  });
});