【发布时间】:2014-01-05 22:32:32
【问题描述】:
我在多行表中的每一行都有两个复选框。在这里,我需要验证
该用户已选中所有行的复选框,但也未选中 approveCheck 和 rejectCheck。隐藏的两个这里是jsp中的示例代码
<display:table>
<display:column title="Approve" >
<center>
<input type='hidden' value='' name='approveCheck'>
<input type="checkbox" name="approveCheck" value="${approve.num}" />
</center>
</display:column>
<display:column title="Reject" >
<center>
<input type='hidden' value='' name='rejectCheck'>
<input type="checkbox" name="rejectCheck" value="${approve.num}" />
</center>
</display:column>
</display table>
在提交我调用的 javascript 时:
function formCheck2(){
var alertMsg = '';
var checkedList1 = window.document.getElementsByName('approveCheck');
var checkedList2 = window.document.getElementsByName('rejectCheck');
var validationFlag = true;
if(checkedList1 == '')checkedList1=0;
if(checkedList2 == '')checkedList2=0;
mainloop:
for(var i = 0; i < checkedList1.length; i++){
for(var i = 0; i < checkedList2.length; i++){
if(checkedList1 !='' && checkedList2 !=''){
if ((checkedList1[i].checked == true || checkedList1[i].checked == "true") && (checkedList2[i].checked == true || checkedList2[i].checked == "true")){
validationFlag = false;
alertMsg = "Cannot check both";
alert('both checked');
break mainloop;
}
else if ((checkedList1[i].checked == false || checkedList1[i].checked == "false") && (checkedList2[i].checked == false || checkedList2[i].checked == "false")){
validationFlag = false;
alertMsg = "need to act on all";
alert('none checked');
break mainloop;
}
else{
validationFlag = true;
}
}
}
}
if(validationFlag){
window.document.forms["Rep"].btnSubmit.disabled = true;
window.document.forms["Rep"].action = '${urlSubmit}';
window.document.forms["Rep"].submit();
}
else{
alert(alertMsg);
return false;
}
}
无论我选择什么,我都会选择“需要对所有人采取行动”块。
【问题讨论】:
-
你能做一个小提琴吗?
标签: javascript html jsp checkbox displaytag