- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直在我的 ajax 表单提交中使用以下代码段:
$.ajax({
url: "",
data: ilmoittautumisdata,
type: "POST",
success:function(){
});
error:function(){
});
});
但是,我记得有人告诉我停止在其中使用 success 和 error,因为它们已被弃用(?),而是使用 $.ajaxComplete();
和 $。 ajaxError();
.
但是,阅读文档对我没有帮助,因为我想同时使用它们,这对我不起作用。
$('#ilmoittuminen').submit(function(){
var ilmoittautumisdata = $('#ilmoittuminen').serialize();
$.ajax({
//url: "",
data: ilmoittautumisdata,
type: "POST"
});
$.ajaxComplete(
function(){
$('#ilmoittuminen').slideUp();
});
$.ajaxError(
function(){
});
return false;
});
我应该怎么做?
最佳答案
首先,您要查找的词是“已弃用”。据我所知,success
和 error
属性绝对不会被弃用。您可以(并且在您的情况下应该)继续使用它们。
您尝试使用 ajaxError
和 ajaxComplete
的问题在于它们是作为 instance 方法实现的,而不是 jQuery 上的静态方法对象本身。因此,您需要选择一些元素并调用该集合的方法。元素本身根本不重要:
$("#someElement").ajaxComplete(function () {
// Do stuff
});
您还没有遇到的下一个问题是 ajaxError
和相关方法注册全局 AJAX 事件处理程序。每次调用其中一个方法时,您都会向全局集中添加一个新的事件处理程序,并且每次触发 AJAX 事件时,所有您注册的处理程序都将被执行。
更新(感谢@DCoder)
从 jQuery 1.8 开始,success
和 error
属性已弃用。相反,您可以使用 jQuery 修改的 XHR 对象的 fail
、done
和 always
方法。从 deferred object 继承的任何对象可以使用这些方法(jqXHR 对象就是其中之一):
$.ajax(ajaxSetupObject).done(function () {
// Handle success
}).error(function () {
// Handle error
});
关于javascript - $.ajaxComplete 和 $.ajaxError 的正确用法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12881072/
我广泛使用 $.get、$.post 和 $.getJSON,所以我想看看 .ajaxError 是如何工作的。我试过这个... $(document).ajaxError(function (e,
我有一堆 ajax 调用,其中包含成功和错误条件,如下所示: $.ajax({ url: 'Remote/State.cfc' ,type: "POST"
我有一个全局 ajaxError 事件,如下所示: $(document).ajaxError(function myErrorHandler(event, xhr, ajaxOptions, thr
我正在尝试处理使用 jQuery 的 Web 应用程序中的 AJAX 错误。 我正在设置一个事件处理程序来处理如下 AJAX 错误: $('body').ajaxError(error_handler
我有一个全局的 $(document).ajaxError 处理程序,它会为我处理大多数错误,以防出现意外的 500 错误或其他错误。但是,有时我想在脚本中本地捕获错误,然后阻止调用该全局错误处理程序
我们使用 jQuery 的全局 ajaxError() 处理程序来提醒用户任何 AJAX 失败: $(document).ajaxError(function() { $("There wa
我正在尝试在我的应用程序中全局处理所有 ajax 异常。 我有一个简单的验证异常,在 ajax post 请求发送到服务器后抛出。 if (string.IsNullOrEmpty(name)) {
我正在尝试为 AJAX 调用实现 jQuery 默认 HTTP 错误处理程序。我已经为一般应用程序错误实现了默认错误处理程序,如下所示: $(document).ajaxError(function(
我发出这样的 AJAX 请求: $.ajax({ url: "/user/logout/", type: 'POST', success: function() { window.
当我使用 $.ajax 调用(在跨域调用时)时,我无法触发 jQuery 的 ajaxError 全局处理程序。有什么办法让它火起来吗? 我在下面包含了一个快速而肮脏的测试(改编自 So how do
在 Jquery 网站上说我应该将 ajaxError 方法附加到一些 html 元素。 这意味着我必须有这样的元素。但我不会用它。 我想要一个全局处理程序来处理所有 ajax 错误消息。 我在这里试
我一直在我的 ajax 表单提交中使用以下代码段: $.ajax({ url: "", data: ilmoittautumisdata, type: "POST", success:function
我目前正在重写所有 ajax 调用以使用 jquery 方法(更简洁的代码!)并声明了默认的 ajaxError 函数,如下所示: $(document).ajaxError(function(eve
我正在构建一个页面,该页面可能会从ajax调用中接收大数量的html,而不是将其插入到页面中。 有时,我会收到一个HTTP 401错误,而不是我期望的HTML。 理想情况下,我希望首先启动错误处理程序
$("html").ajaxError(function (event, jqXHR, ajaxSettings, thrownError){ //show proper message base
在 JavaScript 中,我以这种方式捕获错误: $(document).ajaxError(function(event, jqxhr, settings, thrownError) {
我将其放入 JavaScript 中,并在 $.ajax 中引入了 500 错误,但该例程从未被调用: $('#msg').ajaxError(function(myEvent, jqXHR, aja
我的代码中有很多地方都像这样加载片段: $('').load('/some/thing/', function() { /* put it somewhere */ }); 我还有一个 ajaxErr
我正在尝试删除 $.ajax 错误处理函数并使用 $.ajaxError 代替。一切正常,但我在全局错误处理程序中找不到 textStatus 值。 旧的错误处理: $.ajax({ ...
我有一个全局 ajax 错误处理程序,即使 xhr.status 为 200、xhr.statusText 为“OK”并且 xhr.responseText 是我的 JSON 字符串,该处理程序也会运
我是一名优秀的程序员,十分优秀!