为什么我不能在输入时清空文本区域?
Why can't I empty textarea when I enter?
我刚刚在这个链接中设置了一个jsFiddle问题是我在文本区空了一个换行符之后就看不到占位符了我总是有一个换行符看到这个fiddle了吗
http://jsfiddle.net/W5WE8/我的HTML:
<script src="http//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<textarea id="mytextarea" rows="15" cols="80" placeholder="write something and press enter"></textarea>
这是我的JS:
$('#mytextarea').keydown(function(e) {
if (e.keyCode == 13) {
$('#mytextarea').val('').focus();
}
});
需要阻止keydown
的默认行为。如下所示:http://jsfiddle.net/lnrb0b/W5WE8/2/
$('#mytextarea').keydown(function (e) {
if (e.keyCode == 13) {
e.preventDefault();
$('#mytextarea').val('').focus();
}
});
希望有帮助
简单地阻止事件的默认行为(即在textarea中放置一个return),例如:
$('#mytextarea').keydown(function(e) {
if(e.keyCode == 13)
{
e.preventDefault();
$('#mytextarea').val('').focus();
}
});
查看更新后的jsFiddle
发生这种情况的主要原因是回车键。这将在执行所需操作之前添加一个换行符。
防止其他答案中建议的事件传播
相关文章:
- 函数触发时清空数组
- 清空$_GET和$_POST,表单使用form.submit()
- 在 javascript 事件单击后清空输入
- 清空并附加元素的扩展高度
- 无法在提交之间清空数组
- 输入字段在 jQuery 的 slideUp()/slideDown() 上清空
- 提交按钮将清空输入的值
- 清空表中的所有字段
- javascript清空一个数组并进行验证
- 从DOM中清空一系列元素的最快方法是什么
- Sails.js beforeValidate()清空值参数
- 清空JS中的字符串
- 未捕获的类型错误:this.reset不是函数-在ajax调用后清空输入时出错
- 在设置标头之前清空localStorage
- 在 ASP.NET 中,您可以字符串.清空焦点中的文本框
- 我想清空 2 个输入类型文本的值,选中(框)
- IE11在清空大型<选择>由于页面上有单独的文本区域,因此列出
- 如何在jquery中清空文本框,文本区域
- 如果输入了data's,则清空文本框
- 如何在使用javascript取消选中复选框时清空文本框