提交后清空文本区域的内容[重复]

Posted

技术标签:

【中文标题】提交后清空文本区域的内容[重复]【英文标题】:Empty the contents of a textarea after submit [duplicate] 【发布时间】:2013-03-10 20:04:01 【问题描述】:

我在对话框中有一个评论框 (textarea)。如果评论成功保存,我想清除文本区域的内容并关闭对话框。 ATM 对话框将关闭,但我需要擦除其内容。

<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');

感谢任何回复


编辑: 谢谢你们的帮助。它正在运行代码,但无法正常工作。我认为这与获取正确的 vales 并解决我必须使用的投标问题有关:

 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('');

但没有快乐....好主意?

【问题讨论】:

【参考方案1】:
$('#CommentBox').val('');

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

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

另外,你的标记是错误的。 textarea 不是自闭合元素。你需要一个&lt;/textarea&gt; 标签。并且type="text" 不是必需的(可能实际上也无效)

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

或者您可以使用不同的选择器:

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

【讨论】:

您好,感谢您的回复,请查看我的编辑 @Mick - 根据您的编辑更新了我的答案。 不同选择的工作做得很好。感谢您的帮助【参考方案2】:

你可以使用val:

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

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

JSFiddle

http://jsfiddle.net/KhPM6/1/

编辑

您没有正确引用ASP.NET 生成的文本区域。正如您在问题中所示,您需要像这样引用它:

$('#<%=CommentBox.ClientID%>').val('');

【讨论】:

您好,感谢您的回复,请查看我的编辑 @Mick - 更新了我的答案。 干得好。感谢您的帮助【参考方案3】:
   $('textarea#CommentBox').val('');

【讨论】:

您好,感谢您的回复,请查看我的编辑

以上是关于提交后清空文本区域的内容[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Javascript / jQuery 获取我正在输入的文本区域的 id [重复]

选定文本区域的自定义滚动条设计[重复]

如何防止文本区域中的重复空格

如何使用 HTML 和 Jquery 根据文本修复文本区域高度 [重复]

如何在表格中显示文本区域的换行符?

使用文本区域在多行中显示文本[重复]