我有一个带有 textarea 的 Bootstrap 模式。当您打开模式时,文本区域需要清除任何以前的文本,以便每次打开它时都是新鲜的。
问题是,第一次清除文本时,字段上的占位符也会被删除。
我$('textarea').val('')
用来清除文本。
我有一个带有 textarea 的 Bootstrap 模式。当您打开模式时,文本区域需要清除任何以前的文本,以便每次打开它时都是新鲜的。
问题是,第一次清除文本时,字段上的占位符也会被删除。
我$('textarea').val('')
用来清除文本。
您需要触发该blur
占位符再次出现的事件。它仅在隐藏事件期间有效,因此当它再次出现时,占位符被放回。
$('#modal').on('hide', function() {
$(this).find('textarea').val('').blur();
});
工作jsfiddle
编辑:我错了,似乎只需将事件从 更改为 就可以正常工作,show
正如hide
马丁在他使用事件的回答中所解释的那样shown
当您注册到“显示”事件而不是“显示”事件时,它确实有效。
$(document).ready(function() {
$('#modal').on('shown', function() {
$(this).find('textarea').val('');
});
});
尝试
$(document).ready(function() {
$('#modal').bind('hide',function(){
$('textarea',this).val('')
})
});
多浏览器,jquery-ui 事件标准
在 IE 版本中.. IE 10 仅支持占位符....所以不要在旧版本的 IE 上尝试此操作....
但其他浏览器,如 firefox、Chrome、Opera……都支持这个属性……
试试下面的代码它会帮助你...
更新小提琴:http: //jsfiddle.net/dkRS8/6/
$(document).ready(function() {
$('#modal').on('show', function() {
var ele = $(this).find('textarea');
ele.val('');
});
});