0

私は次のHTMLコードを持っています

<input type="text" readonly name="Name" class="GadgetName" placeholder="Please Enter the Gadget Name" value="Potatoe Masher" />
<input type="text" readonly name="Description" class="GadgetDescription" placeholder="Please Enter the Gadget Description" value="You'll Never Stop Mashing !" />
<form action="SubmitComment" method="POST">
    <div class="Comment">
        <textarea rows="4" cols="200" name="Comment" class="GadgetComment" id="Comment2" placeholder="Write Comments Here"></textarea>
        <input type="button" value="Submit Comment" class="CommentButton" onclick="AddComment()" />
    </div><br />
</form>

読み取り専用テキストボックスNameのテキストとテキストエリアのテキストにアクセスする必要がありますComment

これらの行はforループ内にあるため、同じクラス名を持つ複数のコンポーネントがあることに注意してください。

Commentこのコードを使用して、textareaの値を取得できました

$(document).ready(function(){
    $(document).on("click", ".CommentButton", function(){
        text = $("textarea", $(this).parent()).val();
    });
});

今必要なのは、テキストボックス内のテキストにアクセスすることですName

4

2 に答える 2

1

これがあなたのやり方です。

$(document).ready(function () {
  $('.CommentButton').click(function () {
    console.log($(this).closest('form').parent().find('[name="Name"]').val());
    console.log($(this).parent().find('[name="Comment"]').val());
  });
});

実際に試してみることができます

于 2013-01-17T23:44:31.320 に答える
0

これは2つの方法で実行できます。

  1. 入力名の使用から。

    $(document).ready(function () {
    
    $(document).on("click", ".CommentButton", function () {   
        text    =   $("textarea", $(this).parent()).val();
        var name = $("input[name='Name']").val();
        var description = $("input[name='Description']").val();
       });
    });
    

また

2クラス名を使用して:

    $(document).ready(function () {

    $(document).on("click", ".CommentButton", function () {   
        text    =   $("textarea", $(this).parent()).val();
        var name = $(".GadgetName").val();
        var description = $(".GadgetDescription").val();
       });
    });

JsFiddle: http: //jsfiddle.net/KZ9hx/1/

于 2013-01-17T23:49:01.330 に答える