我有下面的代码,作为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>发布于 2019-03-12 10:21:03
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>
尝试用下面的代码替换您的代码:)
https://stackoverflow.com/questions/55111581
复制相似问题