1

私は2つのdivを持っています:

<div id="player" class="setPlayers">value1</div>
<div id="player2" class="setPlayers">value2</div>

私がやりたいことは、div の value1 と value2 を後で読み取るための配列に設定することだけです。このコードを試してみましたが、うまくいきません:

var array = new Array();

$.each($('.setPlayers'), function(key, object) {
    console.log(index + ':' + value);
    array.push(value);
    alert(value);
});

$.each(array, function(index, value) {
    console.log(index + ':' + value);
    console.log(index + ':' + $(this).val());
});​

どうしたの?乾杯

4

4 に答える 4

5

私が思いついたスタートとしてあなたのコードを使用して:

$(function(){
  var array = [];

  $('.setPlayers').each(function(index) {
      console.log(index + ':' + $(this).text());
      array.push($(this).text());
      alert($(this).text());
  });

  $.each(array, function(index) {
      console.log(index + ':' + this);
      console.log(index + ':' + this);
  });
});

</p>

私の好みでは、アラートとデバッグが多すぎます。

配列を埋めるだけの場合は、次のようになります。

$(function(){
  var array = $('.setPlayers').map(function() { return $(this).text()); }).get();
});
​
于 2012-08-22T11:46:59.667 に答える
3

これを試してください(デモを参照:http://jsfiddle.net/GcjgH/):

var array = $('.setPlayers').map(function() {
  return $(this).text();
}).get();

alert(array[0]);
alert(array[1]);
​
于 2012-08-22T11:41:27.583 に答える
0

これは機能するはずです:

var array = new Array();
$(".setPlayers").each(function() {
    array.push($(this).text());
});
于 2012-08-22T11:40:44.723 に答える
0

正しい構文は次のようになります。$('.setPlayers').each(function(){ ... });

質問の文脈では:

$('.setPlayers').each(function(){
     console.log($(this).attr("id")+':'+$(this).text());
     array.push($(this).text());
     alert($(this).text());
});

for (var i=0; i<array.len; i++){
    console.log(arr[i]);
}

于 2012-08-22T11:39:47.647 に答える