JQuery UI datepicker似乎存在一个错误,当用户手动输入日期并点击输入时,datepicker关闭但焦点停留在该字段上,因此日历将不再打开,直到文本框失去焦点并再次获取它.
我如何抑制回车键行为?或者这个看似已知的错误还有其他已知的解决方案吗?
谢谢!
我如何抑制回车键行为?或者这个看似已知的错误还有其他已知的解决方案吗?
谢谢!
编辑
经过这方面的工作之后,这就是我提出的解决方案:
$('#someid').bind('keydown',function(event) { if (event.which == 13) {var e=jQuery.Event("keydown"); e.which = 9;//tab e.keyCode = 9; $(this).trigger(e); return false; } });
tab键效果很好,可以防止datepicker的enter键事件的默认行为,例如在某些情况下选择今天的日期.
解决方法
尝试这个
$(document).keydown(keyDownHandler); // use appropriate selector for the keydown handler function keyDownHandler(e) { if(e.keyCode === 13) { e.stopPropagation(); e.preventDefault(); return false; } }
e.stopPropagation防止冒泡,e.preventDefault防止默认行为,并且返回false也是如此,我想.
你应该看看最有效的方法:keyUp,keyDown或keyPress.