Я хотел бы знать, каковы реальные различия между всеми этими способами для получения объекта в jQuery.
$('[id*="partofthename"]')
$('#name')
$find('id_of_control')
$get('id_of_control')
Я провел некоторое исследование, и я обнаружил, что:
$get
. Не так ли?$find
получает объект со свойствами и методами$get
совпадает с document.getElementById()
Теперь для № 3. и 4. Большая сделка. С $find
и $get
оба дают мне объекты. $find
для.NET. findComponent()
$get
& $find
- это функции быстрого доступа, которые Microsoft встроила в свою библиотеку JavaScript Ajax.
Но когда мы говорим с элементом DOM и javascript-объектом.
1. $('[id*="partofthename"]')
выбирает нуль/один/несколько элементов id
содержит partofthename
Из Attribute Contains Selector
Документы:
Selects elements that have the specified attribute with a value containing the a
given substring.
2. $('#name')
выбирает один элемент с id
= name
Из документов ID Selector
:
Selects a single element with the given id attribute.
3. $.find('id_of_control')
выбирает всех потомков элемента с использованием фильтра id_of_control
Из .find()
Документы:
Get the descendants of each element in the current set of matched elements,
filtered by a selector, jQuery object, or element.
4. $.get('id_of_control')
выбирает один из совпадающих элементов, согласованных с объектом jQuery, то есть, id_of_control
From .get()
docs:
Retrieve one of the elements matched by the jQuery object.
[{attribute_name}{compare}{value}]
, он выбирает любой элемент с атрибутом {attribute_name}
(id
), значение которого {compare}
(*=
означает содержит) с текстовым value
(partofthename
) http ://api.jquery.com/attribute-contains-selector/это медленный способ заклинания 2. И определенно не правильный способ получить элемент по id
это способ jQuery для получения элемента по id
и 4. являются API-интерфейсами, специфичными для MS-приложений в приложениях ASP.Net, 4. должны быть строго эквивалентными 2. (за исключением того, что вы не получаете объект jQuery, вы получаете объект MSAL DomElement)
$find
или$get
, есть.find()
и.get()
, и они даже удаленно не делают одно и то же? Вы, кажется, сравниваете яблоки и апельсины, некоторые вещи jQuery, некоторые вещи Microsoft, а затем некоторые функции .NET?