我想在用户模糊或输入文本框时触发一个功能。我写了这段代码来实现:
text:function(input,el){
var textCheck = function(){
var value = $.trim(el.val());
if(!value){
el.addClass('error');
}else{
el.removeClass('error');
}
}
$(el).on('blur click keyup', textCheck); //calling the function
$(el).on('keyup', function(e){ ////calling the function again
if(e.keyCode == 13){
textCheck();
}
});
//instead of calling 2 times, how can i put together as single call?
}
我可以缩短绑定事件的代码吗?
答案 0 :(得分:2)
是的!您可以使用.bind()
jQuery方法,该方法不包括事件处理程序的映射:
$(el).bind({
"blur click keyup": textCheck,
"keyup": function(e) {
if(e.keyCode == 13) {
textCheck();
}
}
});
答案 1 :(得分:0)
可以这样做:{但找不到任何目的}
text:function(input,el){
var textCheck = function(e){
if(e && e.type == "keyup" && e.keyCode == 13)
textCheck();
var value = $.trim(el.val());
if(!value){
el.addClass('error');
}else{
el.removeClass('error');
}
}
$(el).on('blur click keyup', textCheck); //calling the function
}