2014-01-23 2 views
0

Я пытаюсь изменить URL, используемый по запросу АЯКС как:Как добавить параметры для запроса GET ajax?

$(document).ajaxSend(function(event, jqXHR, ajaxOptions) { 
    var pattern = /page=\d+/g; 
    if (ajaxOptions.type == 'GET' && pattern.test(ajaxOptions.url)) { 
     if (Drupal.settings.views_infinite_scroll.hasOwnProperty('drupal_html_id')) { 
      for (var key in Drupal.settings.views_infinite_scroll.drupal_html_id[0]) { 
       ajaxOptions.url = ajaxOptions.url + '&drupal_html_id[]=' + key + ';' + Drupal.settings.views_infinite_scroll.drupal_html_id[0][key]; 
      } 
     } 
    } 
    console.log(ajaxOptions.url, 'ajaxOptions.url'); 
}); 

запрос Ajax начинается здесь (от jquery.autopager плагина):

$ .get (nextUrl, insertContent);

но nextUrl всегда остается тем же (без каких-либо изменений он идет к серверу), даже если я уверен, что ajaxSend обратного вызова и
ajaxOptions.url изменяется правильно .....

+0

Каков окончательный построенный url? Возможно, это проблема с параметрами кодирования. –

+0

@BogdanM. даже что-то вроде ajaxOptions.url = '/ bar? foo = 1' или '/ foo' не работает – drupality

+0

@drupality Код отлично подходит для меня, если я удалю все эти «ifs». Я полагаю, что этот 'Drupal' thingy или' pattern.test (...) 'оценивается как false? Или, может быть, цикл пуст (т. Е. Массив/объект пуст)? Вы проверили это? – freakish

ответ

0

Ok, эта функция работает как ожидалось в jQuery 1.7 ... не в 1.4.4

Смежные вопросы