Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как добавить на html-тег произвольный аттрибут? 
:(
    Опции темы
kanaris
Дата 13.3.2011, 03:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 16.2.2008

Репутация: нет
Всего: -1



Пишу яваскрипт-фреймворк.
Столкнулся с необходимостью добавлять к HTML-тегам произвольное свойство, (чтобы и в DOM-e элемента отобразилось), без довесочных скриптов, и т.д. мороки. Наверное самым лучшим способом будет добавление через аттрибут, непосредственно в теге.
Естественно, вот такая конструкция будет неправильной с точки зрения валидатора:

Код

<td timestamp="1269736579">28 Марта, 2010 г. 4:36:19</td>


Нужно для сортировки колонки по времени. Другого способа не могу придумать, как лучше всего указать timestamp к данной ячейке.

Также нужно для записывания id узла в дереве:
Код

<ul>
    <li nodeid="15"><a href="os/windows/">Windows</a></li>
    <li nodeid="16"><a href="os/linux/">Linux</a></li>
    <li nodeid="17"><a href="os/freebsd/">FreeBSD</a></li>
</ul>

Стандартный аттрибут "id" здесь не прокатит, т.к. он должен быть уникальный в пределах всего документа, а элементов на странице с таким "идом" может быть несколько.
Вобщем срочно нужна такая возможность.

Подскажите, есть ли валидный способ добавлять свойства для тегов непосредственно из тега?
Существует ли некое подобие конструкции типа <li onload="this.nodeid=15"> ?
PM MAIL   Вверх
skyboy
Дата 13.3.2011, 10:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 10
Всего: 260



есть rel, который используют кто во что горазд.
или используй невидимые элементы вместо аттрибутов.
или напиши свой DTD, если прохождение валидации важно. 
или не заморачивайся насчет валидации. 
 smile 
PM MAIL   Вверх
ksnk
Дата 13.3.2011, 11:15 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



kanaris, еще вариант - 
Код

<!DOCTYPE html>

и пользоваться атрибутами с префиксом data-
Код

<td data-timestamp="1269736579">28 Марта, 2010 г. 4:36:19</td>


При валидации будет обязательный варнинг про то, что доктайп экспериментальный. А может и не будет.

Понятно, что это уже html 5, но он достаточно адекватно отображается IE, если не очень выпендриваться с новыми возможностями.


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
kanaris
Дата 15.3.2011, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 16.2.2008

Репутация: нет
Всего: -1



Цитата

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


рассматривал, не катит

Цитата

и пользоваться атрибутами с префиксом data-

1:<td data-timestamp="1269736579">28 Марта, 2010 г. 4:36:19</td>


отличное решение, спасибо, правда я нашел на пинд. форуме через час, как тему запостил smile
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0456 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.