提交后清空文本框内容

10

我有一个对话框中的评论框(textarea)。如果评论成功保存,我想要清除评论框的内容并关闭对话框。目前对话框会关闭,但我需要清空其内容。

<textarea id="CommentBox" type="text" runat="server" rows="7" 
maxlength="2000" /> 

if (CommentSuccessfullyUpdated == "TRUE") 
{
//empty the comment box??
//something like
$("#CommentBox").empty();

//closes the dialog box
$("#dialog").dialog('close');

谢谢任何回复


编辑: 感谢大家的帮助。代码正在运行,但是它没有起作用。我认为这与我必须使用以下内容才能选择正确的值并解决绑定问题有关:

 function SubmitButton() {
            var commentBoxData = $('#<%=CommentBox.ClientID%>').val();
           }

当使用断点运行时,返回:

function SubmitButton() {
            var commentBoxData = $('#ctl00_ContentPlaceHolder1_CommentBox').val();
}

与:

<textarea name="ctl00$ContentPlaceHolder1$CommentBox" id="ctl00_ContentPlaceHolder1_CommentBox" type="text" rows="7" maxlength="2000"> </textarea> 

所以我猜当我尝试清空它时,我没有引用到同一个文本区域。

我也试过

$("#CommentBox.ClientID").val('');

但是没有收获...有什么想法吗?

3个回答

10
$('#CommentBox').val('');

使用val()方法,传递一个空字符串。

文档:http://api.jquery.com/val

另外,你的标记有误。 textarea不是一个自闭合元素,需要一个</textarea>标签。而且type="text"不必要(很可能也不是有效的)

根据您的编辑,您可以在.aspx文件的顶部将ID设置为静态(我认为应该是ClientID="static"

或者您可以使用其他选择器:

$('textarea').filter('[id*=CommentBox]').val('');

@Mick - 根据您的编辑更新了我的答案。 - ahren
做得好,不同的选择起作用了。感谢您的帮助。 - Mick

4

2
   $('textarea#CommentBox').val('');

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接