$('#'+ CommentBoxId).val();没有接受

时间:2013-03-12 11:29:14

标签: javascript jquery asp.net html

用户在评论框中输入数据并点击相应的提交btn。我试图将id,CompanyId,WorkId,CommentBoxId传递给后面的代码来更新记录。到目前为止,一切正常,但我也想传递评论框中输入的数据。

JavaScript runtime error: Sys.Net.WebServiceFailedException: The server method 'CommentBox' failed with the following error: System.InvalidOperationException-- Invalid web service call, missing value for parameter: 'CommentBoxContents'.

id,CompanyId,WorkId和CommentBoxId的值都正确传递。那么如何通过文本框中输入的内容? 谢谢


编辑:

<script type="text/javascript" language="javascript">
   var commentBoxData
   function SubmitButton(id, CompanyId, WorkId, CommentBoxId) 
   {
       var commentBoxData = $('#'+CommentBoxId).val();
        Functions.CommentBox(id, CompanyId, WorkId, commentBoxData);
   }
</script>

//在转发器内:

<th style="width:200px;">
     <input id="Comments" name='<%# GetIdOfCommentBox((int)Eval("id")) %>' 
             type="text" runat="server" value='<%# Bind("Comment") %>' />
    <input id="SubmitComments" type="button"
           onclick="SubmitButton('<%# Eval("id") %>','<%# Eval("CompanyId") %>',
                        '<%# Eval("WorkId") %>','<%# Eval("CommentId") %>');"  />
</th>

4 个答案:

答案 0 :(得分:0)

您使用的是$(CommentBoxId).val()错误。

     function SubmitButton(id, CompanyId, WorkId, CommentBoxId) 
     {
         $('#'+CommentBoxId).val();

        Functions.CommentBox(id, CompanyId, WorkId,  $('#'+CommentBoxId).val(), Test);  
     }

请使用$('#'+CommentBoxId).val()

中的Functions.CommentBox

答案 1 :(得分:0)

您可以尝试重写这样的代码:

function SubmitButton(id, CompanyId, WorkId, CommentBoxId) 
{
   var commentBoxId = $('#'+ CommentBoxId).val();
   Functions.CommentBox(id, CompanyId, WorkId,  commentBoxId, Test);  
}

** 更新 **

在转发器内部,文本框ID应与SubmitButton的{​​{1}}参数相同:

CommentBoxId

答案 2 :(得分:0)

此行无效,因为您未存储val()调用的结果

$('#'+CommentBoxId).val();

Functions.CommentBox的调用将为第四个参数设置一个空值,因为您没有为id添加哈希值。

试试这个:

var commentBoxIdVal = $('#'+CommentBoxId).val();
Functions.CommentBox(id, CompanyId, WorkId, commentBoxIdVal, Test);  

答案 3 :(得分:0)

看起来您的输入的ID为“评论”,但您尝试在通话中使用“CommentId”。