необходимо сохранить значение 'this' в файле cookie JQuery

0

Я сохраняю "это" при щелчке файла li в cookie JQuery, но вместо сохранения его значения он сохраняет свой тип:

     $("ul > li").live('click', function () {
    $.cookie("liEvent", this, { expires: 100, path: "/" });
alert(this);
    }

Значение this thiscoming следующее: [object HTMLLIElement], пока оно должно появляться как элемент li, который находится внутри ul.

Пожалуйста помоги.

Теги:
cookies

3 ответа

2

Это довольно сложно объяснить, но this указатель, а не фактическое значение. Если вы хотите иметь доступ к элементу li в другой функции или аналогичной, вы можете просто передать свой атрибут id или аналогичный.

  • 0
    Ладно, мне нужен текущий щелчок. как получить его значение тогда?
  • 2
    @ user2614405, используйте this.innerHTML
0

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

Я предполагаю, что если вы используете файлы cookie, вы планируете обновлять страницу? В этом случае this ключевое слово не принесет вам пользы - поскольку ссылка на объект изменится.

0

Если вам нужно сохранить значение li в cookie, вы должны использовать

      $(this).html()

Также есть некоторые недостатки в использовании.live()... следовательно, я бы рекомендовал использовать вместо.on().

     $("ul").on('click', "li", function () {..

Проблемы, связанные с.live(), обсуждались здесь jQuery-недостатки последовательного использования 'live'

  • 0
    Я использую JQ1.6, так что застрял только вживую. & это дает html внутри тега li, что если мне нужно также включить li. $ ($ (this.html ()). parent () не работает
  • 0
    Есть ли конкретная информация в качестве атрибутов, связанных с ли?
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню