2011-07-07 16 views
0

jquery html()関数で複数の配列値を出力するにはどうすればいいですか?jQuery html()関数で複数のhtml要素を印刷するにはどうすればいいですか?

$('#mer').click(function() { 

     var checked = []; 
     var attr = []; 
     var attr0 = []; 
     var unchecked = []; 
    //$('input[type="checkbox"]').each(function(){ 
    $('input:checkbox[name="attr[]"]').each(function(){ 

     //attr.push($(this).next("label").text()); 
     if(this.checked){ 
      checked.push(this); 
      attr.push($(this).next("label").text()); 

     } else{ 
      unchecked.push(this); 
      attr0.push($(this).next("label").text()); 
     } 
     }); 

     //checked check box show 
     for (j=0; j < checked.length; j++) 
      { 
      //alert(checked[j]); 
      $('#ch').append($('<li>').html(checked[j]+attr[j]); 
      } 

     //unchecked check box show 
     for (j=0; j < unchecked.length; j++) 
      { 
      //alert(checked[j]); 
      $('#ch').append($('<li>').html(unchecked[j]+attr0[j]); 
      } 

     $('input[type="checkbox"]:checked').attr('disabled', true); 
     $('.checklist').hide(); 
     $('#ch').show(); 
    }); 
+0

1次元アレイの場合は、単純に '.join()'を使用することができます – Teneff

答えて

0

私は、このコードは、あなたが望むものをすべて行い思う:

$('#mer').click(function() {  
    $(':checkbox[name="attr[]"]:checked').add(':checkbox[name="attr[]"]:not(:checked)').each(function(){ 
     var text = $(this).next("label").text(); 
     $('#ch').append($('<li/>').append($(this).clone()).append(text)); 
    }); 
    $(':checkbox:checked').attr('disabled', true); 
    $('.checklist').hide(); 
    $('#ch').show(); 
}); 

ホープ、このことができます。乾杯してください

+0

本当にありがとう...私は本当にこれが必要です:-) –

関連する問題