0

我的页面中有多个 div 标签的“ post ”名称,我想做的是在提交点击时在服务器上发布数据。我无法在我的 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 post标签。

如何获得文本区域的价值。??

4

3 回答 3

1

多个元素具有相同的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 回答
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 回答