如果用户在IE中触发退格,则Jquery UI日期选择器会将用户踢出页面

时间:2013-10-17 17:03:43

标签: jquery-ui

我正在使用jqueryUI作为日期选择器来挑选生日。如果这个人试图在框中输入而不是使用选择器,并且点击退格键,则会在IE中输出,然后它们会从表单中跳到前一页。有人可以解释或提出修复方案吗?还不确定为什么当它在firefox外面显示时以及所有其他星号显示正确时,红色星号出现在框内。

看第八个字段: http://www.craftonhills.edu/Degrees_and_Certs/Divs_and_Depts/Career_Education_and_Human_Development/Public_Safety_and_Services/Fire_Technology/Firefighter_Academy/Firefighter_Academy_Info/Application

2 个答案:

答案 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)触发浏览器返回操作。