Firefox中的Ajax调用中的退格键中断

时间:2017-12-13 13:25:22

标签: javascript jquery html ajax browser

我正在使用购物车模块开发电子商务网站。在那有qty框来更新数量。 qty使用$ .ajax方法触发key-up jQuery事件。 as soos as trigger key-up event我禁用了数量框并将请求发送到服务器。

问题是。如果用户在键盘浏览器中按退格键导航到上一页。请帮我看看如何防止退格。

感谢。

2 个答案:

答案 0 :(得分:0)

请尝试以下代码加密事件。

   if(! $(event.target).is('input')) {
        console.log(event.which);
       //event.preventDefault();
       if(event.which == 8) {
        //  alert('backspace pressed');
        return false;
        }
   }

答案 1 :(得分:0)

由于你想要的是确保数据已经发送到服务器,即使用户离开了页面,你也可以尝试使用link方法,这就是针对这种情况。

此方法允许您异步发送少量数据,即使在页面卸载后也是如此。

不幸的是,它仍然没有被广泛支持(没有IE或Safari),所以你必须有一个混合的行为,例如

if(typeof window.navigator === 'object' &&
  typeof navigator.sendBeacon === 'function') {
    navigator.sendBeacon(yourData);
  }
else{
    $.ajax(...
  }