4

デフォルトで無効になっているテキストエリアがあります。そして、「編集」を押すと、ユーザーからの入力を受け取ります。有効であれば、テキストエリアを有効にしたいです。これが私が今持っているコードです:

<textarea name="comment" cols="5" rows="2" disabled="true"><%= $tmp_com %></textarea>
<a href="javascript:validateUser()">Edit</a>

function validateUser(){
var name=prompt("Please enter the password");

    if (name=="1234")
    {
       document.getElementByName("comment").disabled="false";
    }
}
4

3 に答える 3

11

JavaScript には getElementByName はありません。最も簡単な解決策は、ID を追加し、getElementById を使用することです。

<textarea name="comment" id="comment" cols="5" rows="2" disabled="true">

とJavaScript

document.getElementById("comment").disabled="false";
于 2012-11-30T02:11:19.333 に答える
8

名前の代わりに id を使用することをお勧めします。ここで名前を使用して質問をフォローしています。

<a href="javascript:validateUser()">Edit</a>
<textarea name="comment" cols="5" rows="2" disabled="disabled">aaaaa</textarea>

<script type="text/javascript">
    function validateUser(){
        var name=prompt("Please enter the password");
        if (name=="1234")
        document.getElementsByName("comment")[0].disabled=false;
    }
</script>
于 2012-11-30T02:17:10.137 に答える
4

jqueryを使う

$("[name='comment']").attr('disabled', true);
$("[name='comment']").attr('disabled', false);

またはIDによる

$("#comment").attr('disabled', true);
于 2012-11-30T02:14:47.653 に答える