Я получаю объект json с сервера. Если объект json имеет «redirect» в качестве статуса, я вызываю функцию для перезагрузки небольшой части страницы, а затем перенаправления на значение данных jsonObject, которое содержит ссылку, на которую я могу перенаправить.
$.ajax({
url: loadUrl,
dataType: "text json",
success: function( jsonObject, status ) {
if ( jsonObject.status == "redirect" ) {
ajaxLoad($('.list'), $('.group').data('ajax-link'));
location.href = jsonObject.data;
return false;
}
…
и это вызываемая мной функция ajaxLoad (), которая просто перезагружает определенную часть страницы.
function ajaxLoad(targetBox, loadUrl) {
$.ajax({
url: loadUrl,
dataType: "html",
timeout: 5000,
cache: false,
success: function( html, status ) {
targetBox.html(html);
console.log("function() ajaxLoad : " + status);
},
error: function( request, status ) {
console.log("function() ajaxLoad : " + status);
}
});
}
Странная вещь в том, что если я закомментирую строку location.href = jsonObject.data
, то функция ajaxLoad () регистрирует УСПЕХ, если я покидаю строку перенаправления, функция ajaxLoad () регистрирует ОШИБКУ. Поэтому, если я оставляю строку, функция ajaxLoad не работает, если я удаляю строку, она работает.
Однако, как эта строка связана с остальной частью сценария?
Есть идеи?