Загрузка только один раз фильтр каждой вкладки с jquery - PullRequest
0 голосов
/ 04 февраля 2011

У меня есть три вкладки с определенным содержимым фильтра для каждой вкладки.Когда я нажимаю на каждую вкладку, в фильтр #filterContent загружается определенный фильтр.

Проблема в том, что я хочу, чтобы каждый фильтр загружался только один раз и показывал хороший фильтр для каждой вкладки.

Я использую вкладку YUI: http://developer.yahoo.com/yui/tabview/.

var tab0 = tabView.getTab(0);
var tab1 = tabView.getTab(1);
var tab2 = tabView.getTab(2);

tab0.addListener("click", onClickTabToPick);
tab1.addListener("click", onClickTabToSend);
tab2.addListener("click", onClickTabFinished);

var onClickTabToPick = function (e) {
    $.get("/OrderManager/ToPickFilter", function (data) {
        $("#filterContent").html(data);
    });
};

var onClickTabToSend = function (e) {
    $.get("/OrderManager/ToSendFilter", function (data) {
        $("#filterContent").html(data);
    });
};

var onClickTabFinished = function (e) {
    $.get("/OrderManager/FinishedFilter", function (data) {
        $("#filterContent").html(data);
    });
};

Как мне этого добиться.Заранее спасибо.

1 Ответ

1 голос
/ 04 февраля 2011

Просто загрузите данные в разные контейнеры (filterContent1, filterContent2, filterContent3).Вы можете создать эти контейнеры с пустым innerHTML.Перед запросом вы можете проверить $ ('# filterContent1') .html ().Если он пуст, тогда сделайте запрос, в противном случае просто покажите его.

Также вы все еще можете использовать один контейнер, но тогда вам нужно хранить ответы от сервера в каком-то объекте:

var responses = { tab1: null, tab2: null, tab3: null };

var onClickTabToPick = function (e) {
    if ( responses.tab1 == null )
    {
        $.get("/OrderManager/ToPickFilter", function ( data ) {
            responses.tab1 = data;
        });
    }
    $("#filterContent").html( responses.tab1 );
};

И для другихвкладки как для первых.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...