2

私は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>

この場合、上記で使用しているアプローチは控えめに言っても少し不格好なので、指定された値をより簡潔に取得するにはどうすればよいですか。

4

2 に答える 2

5

はい、壊れgetて、jQuery オブジェクトを DOM Element オブジェクトに変換すると、選択した要素で jQuery メソッドを使用できなくなりますeq()。代わりにメソッドを使用できます。

var x = $("p").eq(1).text();

または:eq()セレクター:

var x = $("p:eq(1)").text();

getandeqメソッドはゼロベースでeq(1)あり、2 番目の要素を選択することに注意してください。

于 2012-09-21T22:24:32.420 に答える
2

どうですか:

var x = $("p:nth-child(1)").text();

または:

var x = $("p:first").text();

あるいは:

var x = $("p").eq(0).text();

あなたにとってどれが最も「ぎこちない」かわかりません:)

于 2012-09-21T22:26:11.853 に答える