jquery attr(readonly)函数不起作用

时间:2013-01-04 05:59:27

标签: jquery asp.net

我正在使用AST.Net和jQuery 1.8.3。

我想让一个文本框的readonly属性在pageload上为true,在脚本运行时为false。我的代码是这样的:

  function showdiv() {

    $("#diviv").fadeIn("slow");
    $("#txtname").attr('readonly', false);
    $("#txtmobile").attr('readonly', false);
    $("#txtemail").attr('readonly', false);
}

我想在函数showdiv运行时使这三个文本框的readonly属性为false。此外,我在脚本运行时使div可见。但这不是假的。请给我一些建议,告诉我问题出在哪里。

5 个答案:

答案 0 :(得分:2)

试试这个

$("#txtmobile").prop('readonly', false);

OR

$("#<%= txtname.ClientID %>").prop('readonly', false);

答案 1 :(得分:2)

readonly是一个布尔属性,这意味着如果它存在,无论它具有什么值,它都将被设置。由于属性始终是字符串,因此您将其设置为"false"。请改用prop

$("#txtname").prop('readonly', false);

答案 2 :(得分:2)

Readonly是一个布尔属性,这意味着如果它存在,无论它具有什么值,它都将被设置。由于属性始终是字符串,因此您将其设置为“false”。改用prop。

   $("#txtname").prop('readonly', false);

答案 3 :(得分:0)

你可以在jquery中使用removeAttr。

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

答案 4 :(得分:0)

文本框的readonly属性不会将true/false作为值,您必须指定的是关键字readonly,就像这样,

<input type="text" id="txtName" readonly />

现在,要“禁用”此属性,您必须使用jQuery的.removeAttr()方法删除它,

$("#txtName").removeAttr("readonly");

test link

相关问题