クエリajax応答があり、それを使用して配列変数を設定します。とにかく「Forループ」を使用して#nameに変更することで、各配列要素を設定するコード行を記述する必要がなくなりました。
array[0]=$('#event00',response).html();
array[1]=$('#event01',response).html();
array[2]=$('#event02',response).html();
array[3]=$('#event03',response).html();
したがって、「#event00」をforループで使用して「#event01」などに変更できます。
通常のforループを使用し、セレクターで使用されるインデックスをフォーマットします。
var array = [];
for (var i = 0; i < 4; i++) {
var selector = '' + i;
if (selector.length == 1)
selector = '0' + selector;
selector = '#event' + selector;
array.Push($(selector, response).html());
}
このようなものはどうですか?
var arr = [];
$('[id^=event]', response).each(function(){
arr.Push($(this).html());
});
[attr^=selector]
セレクターは、attr
属性が指定された文字列で始まる要素と一致します。この方法では、「イベント」の後の数字は気にしません。
.each()
はあなたのために動作するはずです。 http://api.jquery.com/jQuery.each/ または http://api.jquery.com/each/ または.map
を使用できます。
var newArray = $(array).map(function(i) {
return $('#event' + i, response).html();
});
編集:私はそれを使用しないことが推奨されているため、先頭に0を追加することを削除しました。
使用する必要がある場合
var newArray = $(array).map(function(i) {
var number = '' + i;
if (number.length == 1) {
number = '0' + number;
}
return $('#event' + number, response).html();
});