Dear Friends, I have implemented multibox, everything is working fine. But I would like to validate the checkboxes, my purpose is atleast one checkbox will be selected from the user while submitting, if not message will be pop up.
I am implementing javascript(client side) validation, My validation.xml contains following code <field property="selectedMagazines" depends="required"> <arg0 key="interestsForm.selectedMagazines"/> </field> I have tried the code, which is posted by "Yuan" as follows in validator-rule.xml, but it didn't worked out. function validateRequired(form) { var isValid = true; var focusField = null; var i = 0; var fields = new Array(); oRequired = new required(); for (x in oRequired) { var field = form[oRequired[x][0]]; if (field.type == 'text' || field.type == 'textarea' || field.type == 'file' || field.type == 'select-one' || field.type == 'radio' || // -- true for single radio button, Saul Q Yuan ([EMAIL PROTECTED]) 10/28/03 field.type == 'checkbox' || // -- true for single checkbox, Saul Q Yuan ([EMAIL PROTECTED]) 10/28/03 field.type == 'password') { var value = ''; // get field's value if (field.type == "select-one") { var si = field.selectedIndex; if (si >= 0) { value = field.options[si].value; } // -- get value for checked single radio button or checkbox, Saul Q Yuan ([EMAIL PROTECTED]) 10/28/03 } else if (field.type == "radio" || field.type == "checkbox") { if (field.checked) { value = field.value; } } else { value = field.value; } if (trim(value).length == 0) { if (i == 0) { focusField = field; } fields[i++] = oRequired[x][1]; isValid = false; } } else if (field.type == "select-multiple") { var numOptions = field.options.length; lastSelected=-1; for(loop=numOptions-1;loop>=0;loop--) { if(field.options[loop].selected) { lastSelected = loop; value = field.options[loop].value; break; } } if(lastSelected < 0 || trim(value).length == 0) { if(i == 0) { focusField = field; } fields[i++] = oRequired[x][1]; isValid=false; } } else if ((field.length > 0) && (field[0].type == 'radio' || field[0].type == 'checkbox')) { isChecked=-1; for (loop=0;loop < field.length;loop++) { if (field[loop].checked) { isChecked=loop; break; // only one needs to be checked } } if (isChecked < 0) { if (i == 0) { focusField = field[0]; } fields[i++] = oRequired[x][1]; isValid=false; } } } if (fields.length > 0) { focusField.focus(); alert(fields.join('\n')); } return isValid; } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]