当前位置: 首页 > 面试题库 >

jQuery的Ajax在FireFox中导致整页刷新

杜砚
2023-03-14
问题内容

我正在用jQuery进行ajax调用。Ajax调用在IE 7中可以正常工作,但是FireFox
3在进行此调用时始终会刷新整个页面。Ajax调用正在发布到ASP.NET页面方法。

jQuery是否有问题,还是我只是缺少某些设置?

$.ajax({
  async: false,
  type: "POST",
  url: "Default.aspx/DoSomething",
  data: "{" + parms + "}",
  contentType: "application/json; charset=utf-8",
  dataType: "json",
  cache: false,
  success: function(data) { succesfulPost(data); },
  error: function(XMLHttpRequest, textStatus, errorThrown) { 
    errorPost(textStatus, errorThrown);
  }
});

调用是通过html按钮的onclick事件进行的。我return false;在进行此ajax调用的方法中尝试了
,但是FireFox中的完全刷新仍在继续。

我尝试设置async =
true,但这似乎不起作用。FireFox只是继续前进,并且不等待后端返回响应。FireFox(在js中)实际上在ajax调用中生成了错误。如上所示,定义了错误函数,当我设置async
= true时将触发该函数。


问题答案:

return false是您所需要的,但是,如果在到达该行之前发生JavaScript错误,那么浏览器将继续愉快地执行链接单击或按钮单击事件。

您可以尝试使用try / catch块尝试围绕潜在的问题区域。

或者,您可以尝试以下操作:

e.preventDefault作为处理程序中的第一条语句。这应该可以阻止默认事件的发生,我想您可以提前调用它……我只是没有尝试过。

编辑:我还想补充一下ajax错误:处理程序仅捕获来自服务器的错误……例如403或500。您仍应将ajax调用包装在try / catch中。



 类似资料:
  • 问题内容: 我有一个简单的函数,它仅将翻译后的消息从服务器返回到客户端。但是,当我将结果传递给var时,结果显示为未定义。 结果- >未定义(错误) 当我查看标题时,它会给我: 为什么我仍然得到不确定的结果? 问题答案: 您可以将回调函数传递给该函数 然后调用:

  • 本文向大家介绍极致体验ajax局部和整体刷新,包括了极致体验ajax局部和整体刷新的使用技巧和注意事项,需要的朋友参考一下 本篇文章将向大家介绍如何通过jquery的load方法进行局部刷新,load方法本身很简单,但是想要结合到jfinal和bootstrap的公共项目中,需要我们多加努力了。 首先我先来来说一下方案。 那么我们需要提供ajax请求的回调函数至少两个参数url以及jquery对象

  • 问题内容: 我有一个将数据发送到php脚本的jquery-ajax函数,问题在于返回值,它返回整个页面而不是单个值。 感谢您的时间和帮助。 问题答案: 就是这样。您是通过AJAX进行请求的,因此您将获得其中的任何内容。 如果您想要一个特定的值,请创建一个仅输出该值的新PHP页面,然后请求该URL的内容。

  • 本文向大家介绍jQuery实现ajax无刷新分页页码控件,包括了jQuery实现ajax无刷新分页页码控件的使用技巧和注意事项,需要的朋友参考一下 这段时间在做公司项目的时候需要用到ajax进行分页(点击页码也是无刷新的显示上一页或下一页的内容,不是一般的选择跳转),但是在网上找了一下,大部分分页插件都是直接刷新跳转的,感觉和我的需求差距比较大,就自己动手写了一个可以实现自己需要的功能的js来实现

  • 问题内容: 我有一个运行在网页上的脚本,该脚本需要使用JQuery $ .ajax方法(当前使用jquery 1.7.2)将多个GET请求提交到不同域上的服务端点。我的ajax调用可以在IE(9、10、11)中运行,但在Firefox和Chrome中显示401未经授权的响应失败。Chrome中的其他错误消息的一部分是“访问此资源需要完全身份验证”。 我的ajax调用是这样设置的(这些失败的请求的d

  • 我有一个Angular的表单,里面有两个按钮标签。一个按钮提交上的表单。另一个按钮是纯导航使用。然而,当点击第二个按钮时,AngularJS会导致页面刷新,从而触发404。我在函数中删除了一个断点,它正在触发我的函数。如果我执行以下任何操作,它将停止: 如果我删除,则该按钮不会导致页面刷新 如果我注释掉函数中的代码,它不会导致页面刷新 如果我将按钮标记更改为锚定标记(