簡體   English   中英

收集並輸出逗號分隔的復選框數組值

[英]collect and output checkbox array values comma separated

我下面的代碼可以用作page.html和page.php。 它計算和驗證/限制復選框的數量僅在2-4個范圍內。 直到我必須將復選框的值輸出為逗號分隔,以便其他PHP腳本可以使用它們時,我才還好。 是否需要將JS更改為PHP以輸出檢查的ckb值,還是在腳本內使用另一個函數循環並在其中輸出值?

<form name=form1  onsubmit="chkcontrol()" method=post>
 <div><input type=checkbox name=ckb value=B117>Add to Compare</div>
    <div><input type=checkbox name=ckb value=264B>Add to Compare</div>
    <div><input type=checkbox name=ckb value=KVS1>Add to Compare</div>
    <div><input type=checkbox name=ckb value=1664>Add to Compare</div>
    <div><input type=checkbox name=ckb value=PA03>Add to Compare</div>

<input type="submit" value="Compare" class="fsSubmitButton" />
</form>
<script type="text/javascript">
function chkcontrol(j) {
var total=0;
for(var i=0; i < document.form1.ckb.length; i++){
if(document.form1.ckb[i].checked){
total =total +1;}
}
if (total < 2 || total > 4) {
alert("Please select 2 - 4 models to Compare") 
return false;
} 
/*alert("View your Compare Table below")*/
for loop if...ckb.checked ?
output(ckb[])   
} 
</script>

 function fsSubmitButton() { var checkboxes = document.getElementsByName('ckb[]'); var vals = ""; for (var i=0, n=checkboxes.length;i<n;i++) { if (checkboxes[i].checked) { vals += ","+checkboxes[i].value; } } if (vals) vals = vals.substring(1); alert(vals) } 
 <form name=form1 onsubmit="fsSubmitButton()" method=post> <div><input type=checkbox class="messageCheckbox" name="ckb[]" value="B117">Add to Compare</div> <div><input type=checkbox class="messageCheckbox" name="ckb[]" value="264B">Add to Compare</div> <div><input type=checkbox class="messageCheckbox" name="ckb[]" value="KVS1">Add to Compare</div> <div><input type=checkbox class="messageCheckbox" name="ckb[]" value="1664">Add to Compare</div> <div><input type=checkbox class="messageCheckbox" name="ckb[]" value="PA03">Add to Compare</div> <input type="submit" value="Compare" class="fsSubmitButton" /> </form> 

嘗試用此代碼替換您的代碼:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM