JQuery get()+数组访问会破坏链吗?

MeM*_*k99 2 javascript jquery

我是Jquery的菜鸟,请原谅我,如果这很荒谬,但是get()和[]会破坏方法链吗?我正在尝试从返回的Jquery对象中检索单个元素:

<HTML>

<HEAD><TITLE>A test page</TITLE></HEAD>



<BODY>

<p>This is a paragraph</p>
<p>This is a second paragraph</p>

</BODY>


</HTML>


<script type="text/javascript"    src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">

var x = $("p").get(1).text();       //This doesn't work       

var y = $($("p").get(1)).text();    //re-wrapping the result does however. 


</script>
Run Code Online (Sandbox Code Playgroud)

如果是这种情况,我如何更简洁地检索指定值,因为目前我正在使用的方法至少可以说有点笨拙.

und*_*ned 5

是的,它中断,get将jQuery对象转换为DOM Element对象,然后您不能在所选元素上使用jQuery方法,您可以使用eq()方法:

var x = $("p").eq(1).text();
Run Code Online (Sandbox Code Playgroud)

:eq()选择器:

var x = $("p:eq(1)").text();
Run Code Online (Sandbox Code Playgroud)

注意,geteq方法是基于零的,eq(1)选择第二元件.

  • 谢谢!我很欣赏这里的另一个答案,因为它有一系列可能的解决方案,但是你得到了点头,因为它解释了为什么它首先发生了. (2认同)