Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery ajaxSuccess()事件处理程序_Javascript_Jquery - Fatal编程技术网

Javascript jQuery ajaxSuccess()事件处理程序

Javascript jQuery ajaxSuccess()事件处理程序,javascript,jquery,Javascript,Jquery,有一件事我真的不喜欢jQuery,那就是它的链接。我找到的所有样本都用这个。那么,有没有一种不使用链接来定义ajaxSuccess的方法呢?我试过这个,但不起作用 jQuery.ajax({ dataType: "json", url: this.DIRECTORY_PHP, data: data, success: this.handleSuccessEvent }); 一般注意事项:“链接”总是可以在连续的disctinct调用中断开: $.ajax({ .

有一件事我真的不喜欢jQuery,那就是它的链接。我找到的所有样本都用这个。那么,有没有一种不使用链接来定义ajaxSuccess的方法呢?我试过这个,但不起作用

jQuery.ajax({
    dataType: "json",
    url: this.DIRECTORY_PHP,
    data: data,
    success: this.handleSuccessEvent
});
一般注意事项:“链接”总是可以在连续的disctinct调用中断开:

$.ajax({ ... }).done(function1).done(function2)
// can be split into :
var ajaxReq = $.ajax({ ... });
ajaxReq.done(function1);
ajaxReq.done(function2);
一般注意事项:“链接”总是可以在连续的disctinct调用中断开:

$.ajax({ ... }).done(function1).done(function2)
// can be split into :
var ajaxReq = $.ajax({ ... });
ajaxReq.done(function1);
ajaxReq.done(function2);

如果只有
handleSuccessEvent
在上下文中有意义(
this
),那么您的示例就可以工作了。将其替换为现有且声明的函数名(),它将正常工作

var myFunction = function(data){ /* TODO */ };
jQuery.ajax({
    dataType: "json",
    url: this.DIRECTORY_PHP,
    data: data,
    success: myFunction
});
将匿名函数赋值给变量是完全可选的,编写它是为了展示该语法的灵活性。也可以自由地采用这种方法:

function myFunction(data){
/* TODO */
}

jQuery.ajax({
    dataType: "json",
    url: this.DIRECTORY_PHP,
    data: data,
    success: myFunction
});

如果只有
handleSuccessEvent
在上下文中有意义(
this
),那么您的示例就可以工作了。将其替换为现有且声明的函数名(),它将正常工作

var myFunction = function(data){ /* TODO */ };
jQuery.ajax({
    dataType: "json",
    url: this.DIRECTORY_PHP,
    data: data,
    success: myFunction
});
将匿名函数赋值给变量是完全可选的,编写它是为了展示该语法的灵活性。也可以自由地采用这种方法:

function myFunction(data){
/* TODO */
}

jQuery.ajax({
    dataType: "json",
    url: this.DIRECTORY_PHP,
    data: data,
    success: myFunction
});

那应该行得通。它以什么方式不起作用?我怀疑您正在丢失上下文
这个
,并假设这是因为ajax请求。您的意思是像普通的成功处理程序(全局)一样,还是像上面那样将成功函数传递到ajax调用中?谢谢大家,我想问题不在事件处理程序上。我只是添加了“错误”处理程序,它就工作了。很抱歉,没有进行太多检查就提出了一个问题:)应该可以。它以什么方式不起作用?我怀疑您正在丢失上下文
这个
,并假设这是因为ajax请求。您的意思是像普通的成功处理程序(全局)一样,还是像上面那样将成功函数传递到ajax调用中?谢谢大家,我想问题不在事件处理程序上。我只是添加了“错误”处理程序,它就工作了。很抱歉,没有进行太多检查就提出了一个问题:)