Я начал использовать инструментарий Wijmo и наткнулся на немало примеров подобных селекторов на их страницах документации:
$(":input[type='radio']").wijradio();
Я бы написал вот так:
$('input[type=radio]').wijradio();
Они делают то же самое или мне чего-то не хватает?
Обратите внимание, что есть два отличия выше: первый селектор имеет префикс двоеточия и имеет кавычки для типа ввода.
jquery
jquery-selectors
Мортен Мертнер
источник
источник
:input
селектор, а другой - универсальныйElement
.Ответы:
:input
является расширением jQuery, аinput
является селектором CSS.textarea
,button
, Иselect
элементы будут согласованы по первой, но не последней.Последний быстрее, поэтому используйте его для своего конкретного
radio
примера. Используйте,:input
если вам нужны «все элементы формы», даже если они не являются строго<input>
тегами. Даже в этом случае рекомендуется сначала использовать стандартный селектор CSS, а затем использовать его.filter(':input')
для этого набора.В источнике 1.7.2 фильтр: input проверяет регулярное выражение на соответствие nodeName:
input: function( elem ) { return (/input|select|textarea|button/i).test( elem.nodeName ); },
источник
[type=]
с,:input
потому что, если я ищу определенный тип, использование,:input
чтобы сначала получить их все, кажется долгим путем. Я понимаю, что для чистых селекторов CSS кавычки являются стандартными, но браузеры прощают. Вы можете быстро протестировать его здесь или без него. Reference.sitepoint.com/css/css3attributeselectors/demofirst select the elements using a pure CSS selector, then use .filter(":input").
?то
$("input")
селектор будет выбирать только элементы ввода типав то время как
$(":input")
селектор перехватит все элементы input (такие как textarea, select, input и т. д.)для получения дополнительной информации перейдите в официальную документацию jQuery о
:input
селекторе по адресу:http://api.jquery.com/input-selector/
источник
:input
Селектор в основном выбирает всеform
элементы управления (ввод, выберите текстовое поле, и кнопки элементов) , где , какinput
выбирает селекторных все элементы по имени тегаinput
.Поскольку радиокнопка является
form
элементом, а также используетinput
тег, они оба могут использоваться для выбора радиокнопки. Однако оба подхода различаются по способу нахождения элементов и, следовательно, имеют разные преимущества в производительности.источник