Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.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创建回调_Javascript_Jquery - Fatal编程技术网

使用Javascript创建回调

使用Javascript创建回调,javascript,jquery,Javascript,Jquery,好吧,我对如何用JavaScript和jQuery混合创建回调有点困惑 以下是我想做的: function saveArtDep(vars, callback) { $.ajax({ url: 'j_artDepAjax.php', type: 'POST', data: vars, success: function(data) { // callba

好吧,我对如何用JavaScript和jQuery混合创建回调有点困惑

以下是我想做的:

function saveArtDep(vars, callback) {
        $.ajax({
            url: 'j_artDepAjax.php',
            type: 'POST',
            data: vars,
            success: function(data) {
                // callback to fire when success
            }
        });  
}
我之所以想这样做,是为了能够重用这个函数,并为我需要它的目的提供一个不同的“加载”消息。换句话说,场景如下所示:

$('div#job').html('loading...');

saveArtDep('job_id=3&update_art=true', function(){
             $('div#job').html('success!');
});

任何帮助都会很好

saveArtDep
中,参数
callback
引用一个函数,因此您可以使用
callback()


saveArtDep
中,参数
callback
引用一个函数,因此您可以使用
callback()调用它


你差点就成功了。您可以将任何内容传递到
回调
,我们在执行它之前确保它是一个函数,在下面的代码中

function saveArtDep(vars, callback) {
    $.ajax({
        url: 'j_artDepAjax.php',
        type: 'POST',
        data: vars,
        success: function(data) {
            // callback to fire when success
            if (typeof callback === 'function') {
                callback();
            }
        }
    });  
}

你差点就成功了。您可以将任何内容传递到
回调
,我们在执行它之前确保它是一个函数,在下面的代码中

function saveArtDep(vars, callback) {
    $.ajax({
        url: 'j_artDepAjax.php',
        type: 'POST',
        data: vars,
        success: function(data) {
            // callback to fire when success
            if (typeof callback === 'function') {
                callback();
            }
        }
    });  
}

你有一个打字错误-callbakc()应该是callback()你有一个打字错误-callbakc()应该是callback()你完全正确,我就知道事情就这么简单…我不知道为什么当时我觉得没有意义。@Dimitri没关系:)你完全正确,我知道事情就这么简单……我不知道为什么当时对我来说没有意义。@Dimitri没关系:)
success: function(data) {
  if(typeof callback == 'function') {
      callback(data);
  }
}