<label class="checkbox inline">
<input type="checkbox" name="Services[]" value="service1"> Service 1
</label>
<label class="checkbox inline">
<input type="checkbox" name="Services[]" value="service2"> Service 2
</label>
$ _POST ['Services']が必要な値を含むPHPの配列にマップされるように、Services[]を使用しています。
ただし、クライアント側では、フォームが(PHPに)送信された後、これらすべてのチェックボックスをオフにする必要もあります。かなり単純なJavascript:(実際のチェックボックスグループの長さは8です)。
for (j=0; j<8; j++){
fields[6][j].checked=false;
}
どこ:
fields[6] = formob.Services[];
formob=document.forms["FooterQuote"];
問題は、Services[]をJavascript配列に入れることができないことです。私は次の方法を使用してみました:(擬似コード、ここでは構文のみが重要です)
var fields=[formob.text1, formob.text2, formob.text3, formob.Services[]];
//Syntax error at Services[]
var fields=new Array(formob.text1, formob.text2, formob.text3, formob.Services[]);
//Syntax error at Services[]
var fields=new Array(formob.text1, formob.text2, formob.text3);
fields.push(formob.Services[]);
//Syntax error at Services[]
そのため、残念ながら、私が知る限り、Services[]をJavascript配列にプッシュすることはできません。
代わりにformob.Servicesを使用してみましたが、これも機能しません。
チェックボックスのname="Services []"構文をJavascript配列で機能させる方法について誰かがアイデアを持っているので、それらをすべて切り替えてチェックを外すことができますか?:)