0

ページに「投稿」名の複数のdivタグがあります。送信をクリックしてサーバーにデータを投稿したいのです。jquery メソッドcommentPost()で textarea " commentText "の値を取得できません。

<div id="post">
  <br>topic containtment is here
  <form name="postComment" id="commentForm" action="javascript:void(0);" method="post"    
   target="_top" onsubmit="return commentPost();">
    <textarea name="comment" id="commentText" cols="10" rows="3" accesskey="1">
    </textarea><br>
    <input type="submit" name="submit" id="commentpost" value="Submit" accesskey="2">
   </form>
</div>

jQuery メソッド

function commentPost()
{
    alert("Inside commentpost");
        //how to get value of commentText
    var comment=("form > commentText").val(); //<--not working
    alert(comment);
    //further code to be written
}

注意: ページには複数のdiv 投稿タグがあります。

テキストエリアの値を取得する方法.??

4

3 に答える 3

1

ドキュメントに「commentText」の値を持つ単一の ID がある場合、関数は次のようになります。

function commentPost()
{
    alert("Inside commentpost");
        //how to get value of commentText
    var comment=("form > #commentText").val(); //<--not working
    alert(comment);
    //further code to be written
}

この ID を持つタグが他にもある場合、マークアップは無効であり、マークアップで id="commentText" を class ="commentText" に変更する必要があります。この場合、関数は次のようになります。

function commentPost()
{
    alert("Inside commentpost");
        //how to get value of commentText
    var comment=("form > .commentText").val(); //<--not working
    alert(comment);
    //further code to be written
}

これが機能したら、関数からアラートを削除することを忘れないでください。

于 2012-06-12T11:00:18.943 に答える
1

同じ を持つ複数の要素を持つことは有効な HTML ではありませんID

その問題を解決すれば、jQuery の問題は間接的に解決されます。

于 2012-06-12T10:35:49.020 に答える
1

idページ上の一意の要素を識別できる必要があります。

通常、あなたがしようとしていることは、以下を使用して解決できますclass

<textarea name="comment" class="commentText" cols="10" rows="3" accesskey="1">
</textarea><br>

次に、 を使用します$("form > .commentText")

于 2012-06-12T10:40:47.283 に答える