我正在使用jqueryUI作为日期选择器来挑选生日。如果这个人试图在框中输入而不是使用选择器,并且点击退格键,则会在IE中输出,然后它们会从表单中跳到前一页。有人可以解释或提出修复方案吗?还不确定为什么当它在firefox外面显示时以及所有其他星号显示正确时,红色星号出现在框内。
答案 0 :(得分:1)
浏览器中的退格键默认为触发后退按钮。您可以尝试拦截击键(请参阅此处:Intercepting all key presses with jQuery before they are processed)以阻止其触发,但更好的解决方案可能是向jQuery UI元素添加“清除”按钮以删除该字段,以便后退按钮仍然按预期工作。
答案 1 :(得分:0)
尝试以下方法:
$(document)
.on('keypress keydown keyup', '.datepicker', function(e) {
if ( e.keyCode == 8 ) e.stopPropagation();
});
将.datepicker
替换为您正在使用的选择器。
这应该允许退格在文本块中按预期工作,但仍然阻止退格(从冒泡DOM)触发浏览器返回操作。