Да, вы можете изменить его, подпись beforeSend
равна на самом деле (в jQuery 1.4 +):
beforeSend(XMLHttpRequest, settings)
, даже если в документации естьпросто beforeSend(XMLHttpRequest)
, вы можете увидеть, как он называется здесь , где s
- это объект настроек :
if ( s.beforeSend && s.beforeSend.call(s.context, xhr, s) === false ) {
Итак, вы можете измените аргумент data
до этого ( обратите внимание, что уже строка к этому моменту , даже если вы передали объект).Пример изменения может выглядеть следующим образом:
$.ajax({
//options...
beforeSend: function(xhr, s) {
s.data += "&newProp=newValue";
}
});
Если это поможет, та же подпись применяется к глобальному обработчику .ajaxSend()
(который имеет правильная документация , показывающая это), вот так:
$(document).ajaxSend(function(xhr, s) {
s.data += "&newProp=newValue";
});