我有一个简单的代码,它按Enter Enter后清除textarea(一个输入 - 只是下一行,像往常一样)
<textarea name="text" id="text" wrap="soft"></textarea>
和.js(基于jquery)
(function($) {
$.fn.keyWatcher = function() {
return this.keydown(function(evt){
var $this = $(this);
var prevEvt = $this.data('prevEvt');
$this.trigger('multikeydown',[prevEvt,evt]);
$this.data('prevEvt',evt);
});
};
})(jQuery); //plugin for double key remember
$('#text').keyWatcher().bind('multikeydown',function(evt,prevKey,currKey){
var prKey = ((prevKey) ? prevKey.keyCode : "(none)");
var cuKey = currKey.keyCode;
if (cuKey == 13 && prKey == 13 ) {
$("#text").val('');
}else{
}
这段代码工作得很好 - 它清理我的textarea,但它在开始时留下一个空行。它并不关心我之前输入了多少行--1或100,无论如何它将第一行留空并将光标放到第二行。
我该如何解决?
谢谢!
答案 0 :(得分:0)
清除时,输入印刷机尚未添加到字段中。将插件中的事件更改为keyup,以便在添加换行符后触发。
return this.keyup(function(evt){