Ядро jQuery / данные или пользовательские атрибуты (управляемые данными) - PullRequest
2 голосов
/ 24 августа 2009

Аналогичный вопрос был задан здесь при хранении информации в данном HTML-элементе.

Я все еще зеленый для jQuery, но я ищу лучший способ хранить информацию на странице. У меня есть повторитель, который содержит одно изображение для каждого элемента. Эти изображения кликабельны и могут запускать данное событие jQuery. Проблема, с которой я столкнулся, заключается в том, что объекты, с которыми связан Repeater, содержат некоторую конкретную информацию (например, «Subtext», «LargerImage» и т. Д.), Которую я хотел бы получить со страницы.

Ядро / Данные в jQuery прекрасно справляются с этой задачей, однако нам все равно нужно будет построить оператор jQuery из C #, поскольку все данные хранятся на сервере. Для пояснения, это сохранение информации на странице из базы данных, которая немного отличается от произвольной информации, доступной через jQuery.

Я не ограничиваю этот вопрос "как привязать пользовательский атрибут к элементу", потому что я натолкнулся на идею создания JS Struct из кода C # для хранения информации, но я избегаю любого кода создание сценариев кода (или попытки).

Пользовательские атрибуты из HTML5 (т. Е. «Data-subtext») также возможны, так как я могу легко добавить их из события itemdatabound:

sampleImageElement.Attributes.Add("data-subtext", "And this what the image is about");

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

Любые мысли очень ценятся.

Ответы [ 2 ]

2 голосов
/ 25 августа 2009

Я отвечаю на этот вопрос только для целей учета стекового потока, поскольку это решение, которое я продвинул вперед для этого сценария. AJAX-вызов полностью оправдан для любых больших наборов данных и является направлением, в котором я определенно пошел бы иначе.

Я продолжил работу с полем "data-" в спецификации HTML5, предоставляемым плагином метаданных jQuery .

Я написал короткий метод расширения для класса Web.UI.AttributeCollection под названием «AddMetaData», который принимает IList, а также строку «Ключ» для облегчения прикрепления к данному элементу страницы.

Я пока не отмечаю это как ответ, так как могут быть отзывы сообщества по моему собственному направлению.

0 голосов
/ 24 августа 2009

Чтобы прояснить, что происходит в ASP.NET, после доставки страницы клиенту объекты, с которыми связан Repeater на сервере, уничтожаются и затем воссоздаются при каждой обратной передаче страницы.

Похоже, вы хотите добиться какого-то эффекта всплывающей подсказки, когда содержимое извлекается с сервера через AJAX? Доступны многочисленные варианты подсказок

, которые можно использовать для этого. Затем вы можете настроить веб-сервис или метод страницы для получения соответствующих данных из вашего источника данных.

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

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