Слишком часто я нахожу, что храню данные объекта в скрытых элементах dom. Мне было любопытно, есть ли способ привязать эти данные к самому узлу dom. Когда я пытаюсь создать атрибуты «на лету», он, похоже, не работает. Было бы намного легче получить доступ к свойству this.something вместо доступа к html, содержащемуся в дочернем элементе. Я чувствую, что должен знать, как это сделать, но я этого не делаю. Благодарю.альтернатива скрытию данных в divs?
ответ
Там абсолютно есть! jQuery's .data()
.
$('#someId').data('myData', someValue); // To store the data
$('#someId').data('myData'); // To retrieve it again
Любая переменная JavaScript может храниться как данные - это не ограничивается строками.
Обратите внимание, что это фактически не прикрепляет данные к узлу DOM, как вы говорите (чего следует избегать). jQuery хранит свой собственный кеш всех хранящихся вами данных и узлов DOM, к которым вы хотите их подключить. Таким образом, это не то же самое, что и domNode.myData = someValue
.
Стоит отметить, что метод 'data()' будет использовать атрибуты data-'HTML5 как механизм хранения/поиска. Можно написать свою разметку с атрибутами данных, которые могут быть прочитаны jQuery. EG: '
@ Натан, я, наверное, должен был упомянуть об этом. Хотя атрибут HTML используется только для извлечения, а не для хранения, и только для начального значения. –
jQuery.data - предпочтительный способ сделать это.
- 1. CSS divs: display: таблица альтернатива?
- 2. Создание папок скрытию и
- 3. скрытию и EditText
- 4. Руководство по скрытию will_paginate ссылок на страницы
- 5. Использование тумблер скрытию и разделы страницы
- 6. Поплавок: левый; Альтернатива для создания divs в одной строке?
- 7. Альтернатива CSS для размещения вложенных divs в mPDF
- 8. Альтернатива в базе данных доступа
- 9. Альтернатива кадру данных в R
- 10. Альтернатива передаче данных в onClick?
- 11. Альтернатива привязке данных
- 12. Альтернатива загрузке данных Inline
- 13. Альтернатива большой базе данных
- 14. Альтернатива перезагрузке данных модели
- 15. альтернатива базе данных опроса?
- 16. альтернатива множественному селектору данных
- 17. скрытию и выбранные листы в Excel с помощью VBA
- 18. Альтернатива поставщику учетных данных Windows
- 19. Какова альтернатива поставщикам данных OleDB?
- 20. Альтернатива таблице для отображения данных?
- 21. Альтернативная альтернатива базам данных базы данных MATLAB
- 22. визуализация данных: альтернатива диаграмме venn?
- 23. Альтернатива URI данных или спрайтов?
- 24. Альтернатива базе данных для хранения данных?
- 25. как дублировать divs в divs
- 26. Лучшая альтернатива для фиксации данных в рельсах?
- 27. Альтернатива структуре данных ячейки Matlab в Python
- 28. Хорошая альтернатива базе данных в программе C#
- 29. сохранить содержимое divs в базе данных
- 30. Считывание данных JSON в разных divs
Удивительно, спасибо, ребята. – Orbit
Как уже упоминалось, jQuery.data - это, вероятно, то, что вы ищете. Тем не менее, посмотрите на спецификации html5 и атрибуты 'data-', которые являются довольно удивительными, и что-то, что вы увидите, уже используется на многих сайтах, поскольку они не ломаются в браузерах без html5 :) –
Не знаете, почему добавление атрибуты «на лету» не работают на вас. Взгляните на этот пример, чтобы увидеть, как заставить его работать (http://www.webdevout.net/test?01o) – nybbler