如何向添加“只读”属性?

2020/10/04 08:21 · javascript ·  · 0评论

如何添加readonly到特定内容<input>.attr('readonly')不起作用。

jQuery <1.9

$('#inputId').attr('readonly', true);

jQuery 1.9以上

$('#inputId').prop('readonly', true);

阅读有关prop和attr之间差异的更多信息

使用$ .prop()

$("#descrip").prop("readonly",true);

$("#descrip").prop("readonly",false);

只读是html中定义的属性,因此请一视同仁。

如果您希望对象不可编辑,则需要在其使用的对象中包含readonly =“ readonly”之类的内容。而且,如果您希望它再次可编辑,您将不会有readonly =''之类的东西(如果我理解正确的话,这是不标准的)。您确实需要整体删除该属性。

因此,在使用jquery时添加和删除它才有意义。

将内容设置为只读:

$("#someId").attr('readonly', 'readonly');

删除只读:

$("#someId").removeAttr('readonly');

这是对我真正有效的唯一选择。希望能帮助到你!

.attr('readonly', 'readonly')应该可以。.attr('readonly')只返回该值,而不设置一个。

我认为“已禁用”排除了在POST上发送的输入

您可以使用.removeAttr;禁用只读;

$('#descrip').removeAttr('readonly');

启用只读:

$("#descrip").attr("readonly","true");

用于禁用只读

$("#descrip").attr("readonly","");

使用setAttribute属性。在示例中请注意,如果选择1,则在文本框上应用readonly属性,否则将其删除为readonly属性。

http://jsfiddle.net/baqxz7ym/2/

document.getElementById("box1").onchange = function(){
  if(document.getElementById("box1").value == 1) {
    document.getElementById("codigo").setAttribute("readonly", true);
  } else {
    document.getElementById("codigo").removeAttribute("readonly");
  }
};

<input type="text" name="codigo" id="codigo"/>

<select id="box1">
<option value="0" >0</option>
<option value="1" >1</option>
<option value="2" >2</option>
</select>

对于1.9以下的jQuery版本:

$('#inputId').attr('disabled', true);

对于jQuery版本> = 1.9:

$('#inputId').prop('disabled', true);
本文地址:http://javascript.askforanswer.com/ruhexiangtianjiazhidushuxing.html
文章标签: ,  
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!