0

一連のチェックボックスを配列(name = "action []")として設定し、JavaScript関数を別のチェックボックスにリンクしてすべてのチェックボックスをオン/オフにします。チェックするチェックボックスが少なくとも2つある場合は正常に機能しますが、チェックボックスが1つしかない場合は何もしません。誰かが私を正しい方向に向けることができますか?ありがとう!

HTML:

<input type="checkbox" name="checkall" id="checkall" class="box" onClick="doCheck(this, 'action');">

<input type="checkbox" name="action[]" id="action" value="' . $something['someid'] . '" class="box">
<input type="checkbox" name="action[]" id="action" value="' . $something['someid'] . '" class="box">

JavaScript:

function doCheck(mainChk, fields) {
  for(i = 0; i < mainChk.form.elements[fields].length; i++) {
    mainChk.form.elements[fields][i].checked = mainChk.checked;
  }
}
4

1 に答える 1

1
<input type="checkbox" name="checkall" id="checkall" class="box">

<input type="checkbox" name="action[]" id="action" value="' . $something['someid'] . '" class="box check-child">
<input type="checkbox" name="action[]" id="action" value="' . $something['someid'] . '" class="box check-child">

jqueryを使用したい場合は、次のコードを使用できます。

$("#checkall").click(function(){
    if($(this).is(":checked"))
        $(".check-child").attr("checked", "checked");
    else
        $(".check-child").removeAttr("checked");
));
于 2013-01-28T14:50:47.420 に答える