JQuery вкладки, он ведет себя неправильно, или я действую неправильно - PullRequest
0 голосов
/ 05 августа 2011

Я использую вкладки jquery для некоторых моих сайтов ... по какой-то причине мне нужно было поймать индекс фактически выбранной вкладки. Когда я нажимаю на некоторые вкладки, он возвращает мне индекс вкладок, который ранее был выбран ... он действует неправильно, или я делаю что-то не так. мне просто нужен индекс табуляции, который я на самом деле выбираю ...

вот код

    $(function () {
        $("#tabs").tabs({
            create: function (event, ui) {
                return false;
            },
            select: function (event, ui) {
                LoadSalesDetailsFrame($(this).tabs('option', 'selected'));
                // for instance i click the tab with index 5 , it returns the tab index that is already being selected before i select some
            }
        });
    });
    function LoadSalesDetailsFrame(tabIndex) {
        alert(tabIndex);
    } 

1 Ответ

1 голос
/ 05 августа 2011

попробуйте это:

$(function () {
    $("#tabs").tabs({
        create: function (event, ui) {
            return false;
        },
        select: function (event, ui) {
            LoadSalesDetailsFrame(ui.index);
        }
    });
});
function LoadSalesDetailsFrame(tabIndex) {
    alert(tabIndex);
} 

единственная разница была вместо $ (this) .tabs ('option', 'selected'), вы используете ui.index если вы используете $ (this) .tabs ('option', 'selected'), он получает текущий выбор в тот момент времени, когда вы нажимаете следующую вкладку, которая фактически остается предыдущей вкладкой. вместо этого вы должны использовать объект "ui", переданный событием select.

...