によってアレイを操作します。その配列の中を見ると、最後に追加された項目が1つしかないことがわかります。どうして ?私は以下のループを持ってjQueryの
0
A
答えて
3
ローカル変数としてmyArray
を宣言するためです。配列の値を保持する場合は、var myArray = [];
を共通関数の外に移動します。
var myArray = []; // This variable is shared by all instances of somefunction
$('#example').click(function() {
$(this).children('a').each(function() {
myArray.push($(this).attr('href')); //myArray in the parent scope
});
});
+0
それはjquery関数の外で宣言されているので、私はこれを問題とは思わない。 +それは1つの値を持っています... – gdoron
+0
@gdoronコードのすべてが表示されません。 OPが '.click()。click()。click()' = 3トリガを使って関数を呼び出すことは完全に可能です。それでも、 'var myArray = [];'がclickイベントハンドラの内部にある場合、配列はローカルでしか利用できません。 –
1
私はループの方がはるかに高速ですので、forループを使用することをお勧めします。
http://jsperf.com/jquery-each-vs-for-loop/44
これを試してみてください:
var myArray = [],
links = $("a.link");
for (var i = 0, l = links .length; i < l; i++) {
myArray.push($(links[i]).attr("href"));
}
console.log(myArray);
関連する問題
- 1. は、私は以下のjQuery Timepickerコードを持ってjQueryのtimepicker
- 2. jqueryの - 私は、以下の文字列を持っている
- 3. は、私は以下の持っているのjQuery
- 4. 私は以下の表を持って
- 5. jqueryのは、私は以下のように複数のULのリストを持っているループ
- 6. は、私は以下のようにHTMLコードを持っているjQueryの
- 7. jQueryのは - 、私は以下のような形を持っている
- 8. は、私は以下の持っている私のソースリスト
- 9. は、私は以下のようなHTML何かを持っているjQueryオブジェクト
- 10. ZendFrameworkは、私は以下のこのアクションとコントローラーを持って
- 11. は、私はMakefileの中に、以下のsedコマンドを持って
- 12. は、私は以下の表を持っているMySQLの
- 13. Scalaは、私は以下のコードを持って未来の
- 14. は、私は、以下のカテゴリーのモデルを持っているリスト
- 15. は、私は以下のクラスを持っているHashSetの
- 16. 私は、以下のデータをMySQLのテーブルを持っている
- 17. は、私は以下の目的を持っているオブジェクト
- 18. XPath式は、私は以下のXMLを持って
- 19. ヘルプは、私は以下の表を持って
- 20. は、私は以下のクラスを持っているリスト
- 21. は、私は以下のメソッドを持っている方法
- 22. は、私は以下のコードを持っている
- 23. は、私は以下のコードを持っているgetRowDataがnull
- 24. C#GetMethodは、私は以下のクラスツリーを持って
- 25. RelativeLayoutは、私は以下のようにrelativeLayoutを持って
- 26. Postgresは、私は以下の表を持っている
- 27. は、私は以下のDTOを持ってServiceStack
- 28. Pythonは、私は以下のようなJSONを持って
- 29. SSRSは、私は以下のデータテーブルを持っている
- 30. Unityは、私は以下のクラスを持っているリポジトリ
の内側に、このコードは何ですか?別の関数やループの中にいる場合は、取得するたびにmyArrayをリセットします。 – MetalFrog
これはコード全体ですか? – Tyler