提交后清空文本区域的内容[重复]
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
不是自闭合元素。你需要一个</textarea>
标签。并且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 [重复]