使用Find查询Jquery属性选择器

时间:2014-03-29 08:06:13

标签: jquery

1

$('[name='+name+']')

VS

2

$.find('[name='+name+']')

#1结果jquery对象数组。 ,#2返回元素数组

jquery如何确定何时返回元素vs jquery对象..

2 个答案:

答案 0 :(得分:2)

从下面的评论中,您会混淆两个不相关的功能。 (这很容易做到。)

jQuery实例记录的方法称为find,它返回一个jQuery实例。您可以在实例上调用它,而不是在jQuery函数上调用它。 E.g:

var instance = $("some selector here");
instance.find("some other selector here").doSomething();

在名为jQuery的{​​{1}}函数上有一个内部,未记录的方法。如果您要使用它,您可以这样做:

find

该功能与上面记载的功能完全无关,因为它没有记录,你不应该使用它。

这与人们对jQuery#each(您在jQuery实例上调用以记录其内容的文档化API函数)和$.each(您在{{1上调用的文档化API函数)的混淆类似。函数循环遍历任意类数组和对象结构。)

  

jquery如何确定何时返回元素vs jquery对象..

几乎所有公共API调用都返回jQuery对象。内部方法可以执行jQuery需要内部方法的任何操作。 : - )

答案 1 :(得分:-1)

$('[name ='+ name +']')这将使所有元素与“name”匹配,但第二个$ .find('[name ='+ name +']')不像这个$( “父选择器”)。找到('[name ='+ name +']')这将在所选元素内找到。