Как сохранить древовидное меню открытым после нажатия на ссылку? Я использую C#!

У меня есть древовидное меню.

Как я могу сохранить это меню открытым после нажатия на ссылку, после обратной передачи?

Obs: я использую ASP.NET C#

Не могли бы вы помочь?

jQuery(".menu li").on('click', function (e) {
    e.stopPropagation();

    if (jQuery(this).children().prop("tagName") == "A") {
        jQuery(".menu li a").parent(".item-selected").removeClass('item-selected').addClass('item');
    }

    if (jQuery(this).hasClass('item')) {
        jQuery(this).removeClass('item').addClass('item-selected');
    }

    else if (jQuery(this).hasClass('item-selected')) {
        jQuery(this).removeClass('item-selected').addClass('item');
    }

    jQuery(this).children('ul').slideToggle();
});

Пожалуйста, проверьте эту скрипку: http://jsfiddle.net/fzy48/8/

1 ответ

Если ссылка является фактической ссылкой на отдельную страницу, вы не можете точно. jQuery относится только к той странице, на которой вы находитесь. С другой стороны, если вы хотите управлять чем-то, что выглядит так, вы можете с небольшим сумбуром и некоторой динамической помощью на стороне сервера. По сути, вам нужно передать состояние, которое вы хотите сохранить (состояние древовидного меню с любой степенью детализации), на сервер, а затем передать эту же информацию на следующую страницу. Затем эта страница встраивает его в страницу как набор динамически генерируемых вызовов javascript var. Затем вы помещаете в загрузку страницы функцию jQuery, которая ищет эти переменные и соответствующим образом устанавливает меню. Таким образом, когда вы переходите на следующую страницу, меню открывается там, где вы ее оставили.

Другие вопросы по тегам