2014-12-16 5 views
0

Я все еще изучаю JS и HTML, и я хочу знать, могу ли я использовать атрибуты, которые не существуют по умолчанию, могу ли я добавить новый из html? могу ли я добавить новый из JS?Могу ли я добавлять пользовательские атрибуты в элементы html?

+2

Да. Просто используйте атрибуты 'data-' HTML5. http://html5doctor.com/html5-custom-data-attributes/ – Terry

+0

Спасибо Терри, но как я могу получить элемент после этого, где эти атрибуты = что-то, например: $ ("span [data-attribute = 'my value '] ") .. Я пробовал это, но он не работает, зная, что мой вход имеет следующее:

+1

Это потому, что вы выбираете элемент' ' с атрибутом 'data-attribute', значением которого является' my value'. Если вы хотите совместить ввод, используйте '$ (" input [data-attribute = 'my value'] ")'. Если после этого вы хотите совместить элемент span, используйте общий или непосредственный селектор: '$ (" input [data-attribute = 'my value'] ~ span ")' или '$ (" input [data-attribute = 'my value'] + span ")'. – Terry

ответ

1

Вы можете установить любые атрибуты, которые вы хотите использовать в своих элементах html.

Если вы используете JQuery см: http://api.jquery.com/attr/#attr2

$("#elementID").attr("customAttr", "Anything you want"); 

Без JQuery

var myElement = document.getElementById('elementID'); 
myElement.setAttribute("customAttr", "Anything you want"); 
+0

Как я могу получить элемент, который использует настраиваемый атрибут? $ ("span [data-attribute = 'my value']"); не работает –

+0

Посмотрите на [jQuery documentation] (http://api.jquery.com/category/selectors/attribute-selectors/), чтобы выбрать атрибут. Или вы можете добавить идентификатор к элементу и выбрать его по id. Если он не работает, я рекомендую вам воссоздать проблему на [jsFiddle] (http://jsfiddle.net/). – rousseauo

2

Что-то, как это должно работать:

var x = document.getElementById('yourid'); 
x.setAttribute("TestAttribute", "TestValue"); 
+0

Привет, Алек, вы можете увидеть мой комментарий выше? –

+1

Я бы отложил на jQuery api: http://api.jquery.com/attribute-equals-selector/ Ссылка выше имеет достойный пример. Поиск «jQuery get element by attribute» даст вам множество примеров. – alec

+0

Спасибо alec, этот метод не работает для настраиваемых атрибутов –