如何在AJAX成功函数中传递额外数据?

时间:2011-11-23 15:36:11

标签: javascript jquery ajax function

我有一个功能:

function Activity() {
    this.LoadFile = function (path, onSuccess) {
        $.ajax({
            url: path,
            dataType: 'html',
            success: onSuccess
        });
    };
}

此刻我称之为:

var activity = new Activity();

activity.LoadFile('../file.htm', function (data) {
    console.log(data);
});

我想做的是在AJAX成功回调中添加一些默认值。可以说,例如,我总是希望默认情况下记录数据,而不是每次执行LoadFile时都不写入数据。希望你明白这一点,谢谢你。

3 个答案:

答案 0 :(得分:1)

您可以创建一个包装函数,记录/ etc然后调用onSuccess函数:

this.LoadFile = function (path, onSuccess) {
    var onSuccessWrapper = function(data) {
      console.log(data)
      onSuccess(data)
    }
    $.ajax({
        url: path,
        dataType: 'html',
        success: onSuccessWrapper
    })
}

答案 1 :(得分:0)

你可以做下面的

$.ajax({
    url: path,
    dataType: 'html',
    success: function(data, textStatus, jqXHR) {
        console.log(data);
        onSuccess(data, textStatus, jqXHR);
    }
});

答案 2 :(得分:0)

你好,你试过这个吗?

 $.ajax({
        url: path,
        dataType: 'html',
        success: function(data){
            onSuccess(data);
            alert(data);//default here
        }
    });