JQuery вкладки загружают 404 страницы - PullRequest
1 голос
/ 11 ноября 2011

Я использую вкладки jQuery для своего проекта с «ленивой» загрузкой содержимого вкладки через Ajax.

Но, когда я делаю опечатку, а среда Rails выдает мне HTTP 404 со страницей ошибок, Tab не загружаетсястраница, и я не могу видеть информацию об ошибке.( Исправление: Кажется, что Rails возвращает HTTP 500, когда в коде есть опечатка)

Есть ли способ указать jQuery загружать / отображать страницы, возвращенные с кодом 404, как обычно?

У меня так далеко:

$('#tabs').tabs({
    ajaxOptions: {
        error: function (xhr, status, err) {
            // Call success function - but how?
        }
    }
});

Ответы [ 2 ]

2 голосов
/ 11 ноября 2011

Объект ajaxOptions принимает те же параметры, что и сам метод jQuery .ajax (), поэтому вы можете использовать объект statusCode в своих интересах здесь http://api.jquery.com/jQuery.ajax/

Пример на этой странице для statusCode выглядит следующим образом:

$.ajax({
  statusCode: {
    404: function() {
      alert('page not found');
    }
  }
});

Чтобы использовать его в контексте вкладок jQuery, просто передайте statusCode как объект в ajaxOptions следующим образом:

$('#tabs').tabs({
  ajaxOptions: {
    statusCode: {
      404: function() {
        //your 404 handling code runs here
      } 
    }
  }
});
1 голос
/ 11 ноября 2011
Страница

404 также запускает событие успеха, а не событие ошибки.попробуй внутри событие успеха

...