Загрузка JSON-закодированного содержания Ajax во вкладки UI jQuery

Мы хотим, чтобы все наши вызовы Ajax в нашем веб-приложении получили JSON-закодированное содержание. В большинстве мест это уже сделано (например, в моделях) и хорошо работает.

Однако при использовании вкладок jQueryUI (http://jqueryui.com/demos/tabs/) и их ajax функциональность, только простой текст HTML может быть возвращен (т.е. из URL, указанных в теги ниже). Как я заставляю функцию вкладки распознавать, что при щелчке каждой вкладки, она будет получать JSON-закодированные данные из указанного URL, и загрузить в .content индексе этого JSON?

$(function() {
    $('div#myTabs').tabs();     
});


8
задан Stephen 15 December 2010 в 15:41
поделиться

1 ответ

Вы можете использовать параметр dataFilter вызова ajax для преобразования вашего ответа json в html, который вы хотите вставить в панель вкладки.

Что-то вроде этого:

$('#mytabs').tabs({
    ajaxOptions: {
        dataFilter: function(result){
            var data = $.parseJSON(result);
            return data.myhtml;
        }
    },
}); 

Если бы ваш JSON ответ выглядел так:

{"myhtml":"<h1>hello<\/h1>"}
17
ответ дан 5 December 2019 в 06:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: