2011-02-09 12 views
0

"selectedids []"という名前のチェックボックスを使用していて、JavaScriptですべてのチェックボックスを選択しようとしています。コードが機能していません。チェックボックスの名前を "selectedids"に変更すると機能しますが、POSTEDページで選択されているすべてのIDが必要なので、これを行うことはできません。複数のチェックボックスを選択していない問題

foreach($rows as $row) 
{ 
<input type="checkbox" name="selectedids[]" value="<?php echo $row['id']; ?>" class="checkbox" /> 
........ 
........ 
} 

、次のようにするJavaスクリプト機能は次のとおりです:次のように

チェックボックスがある

function SetAllCheckBoxes(CheckValue) 
{ 
    var CheckValue=true; 
    if(!document.forms['main']) 
     return; 
    var objCheckBoxes = document.forms['main'].elements['selectedids[]']; 
    if(!objCheckBoxes) 
     return; 
    var countCheckBoxes = objCheckBoxes.length; 
    if(!countCheckBoxes) 
     objCheckBoxes.checked = CheckValue; 
    else 
     // set the check value for all check boxes 
     for(var i = 0; i < countCheckBoxes; i++) 
      objCheckBoxes[i].checked = CheckValue; 
} 

私を助けてください......事前に

感謝.......

答えて

3

jQueryを使用するオプションはありますか?あなただけのすべてのボックスは、ときにのみ確認されていることを確認したい場合は、

$(':checkbox').attr('checked',true); 

または:それはまた仕事はしようとするかもしれない

$(':checkbox').each(function(){ 
    $(this).attr('checked',true); 
}); 

:もしそうなら、あなたのような何かを行うことができます最初のページを読み込むと、チェックボックスを作成するPHPに "CHECKED"が表示されます。すなわち、使用することを更新しました

<input type='checkbox' name='selectedids[]' value='value' CHECKED> 

:コメントごとのチェックボックス

+1

あなたはおそらく '$( ':checkbox')'を意味し、コロンに気づくでしょう – knittl

1

それは私だった場合、私はjQueryのビットと、それらを識別するためのチェックボックスのクラスを使用します。 これは動作します:

$('input.checkbox').each(function(){$(this).attr('checked',true); }); 

それは本当のようにクラス「チェックボックス」で、すべてのチェックボックスを設定します。


殴られました!

2

なぜあなたはidでそれらを選択しませんか?例:

var a=0; 
while(document.getElementById('mycheckbox_'+a))document.getElementById('mycheckbox_'+a).checked=true; 
関連する問題