Подтвердить что ты не робот

С помощью ajax beforeSend для изменения данных

Скажем, у меня есть вызов Ajax из jQuery следующим образом:

$.ajax({
   url: myUrl,
   data: myData,
   type:'post'
});

Я хотел бы иметь возможность добавлять в myData, используя

$.ajaxSetup({
   beforeSend: function(call){...}
});

Результат должен состоять в том, что все вызовы ajax (как post, так и get) изменяются, поэтому, если я получаю дополнительный параметр IsAjax = true

4b9b3361

Ответ 1

В этом сообщении в блоге объясняется, как вы можете использовать $.ajaxSetup для добавления данных. Он накапливается как $.extend Просто сделайте следующее:

$.ajaxSetup({
  data:{
    isAjax:true
  }
});

Ответ 2

$.ajaxSetup({
  beforeSend: function(jqXHR, settings) {
    settings.data = $.extend(settings.data, {isAjax: true});
    return true;
  }
});

Ответ 3

Вы можете просто использовать beforeSend в $.ajax();

$.ajax({
  beforeSend: function(xhr){
    this.data += '&' + $.param({
      param: 'test'
    });
  }
});