Form verification - word count in textarea

I am modifying a php page that accepts text input from a textarea. I need to verify that the text entered in the form is at least 20 words long. The form is being passed to a formcheck function which does all my other error checking, but every attempt to verify word count makes the application fail.

This is the call to formcheck function:

This is the formcheck function:
function checkForm(form){
returnVal = true;
confirmOff = true;
errorMess = “Your form has the following errors:\n”
if(form.home.value==form.visitor.value){
errorMess += " -The home and visitor team are the same.\n"
confirmOff = false;
returnVal = false;
}
if(form.r.value!=submittingOff && form.u.value!=submittingOff && form.hl.value!=submittingOff && form.lj.value!=submittingOff && form.bj.value!=submittingOff){
errorMess += " -You did not select yourself for a position.\n"
confirmOff = false;
returnVal = false;
}
if(((form.rPrompt.value<=4 || form.rAppear.value<=4 || form.rAtt.value<=4 || form.rMech.value<=4 || form.rRules.value<=4 || form.rPos.value<=4) && form.rComments.value=="")
|| ((form.uPrompt.value<=4 || form.uAppear.value<=4 || form.uAtt.value<=4 || form.uMech.value<=4 || form.uRules.value<=4 || form.uPos.value<=4) && form.uComments.value=="")
|| ((form.hlPrompt.value<=4 || form.hlAppear.value<=4 || form.hlAtt.value<=4 || form.hlMech.value<=4 || form.hlRules.value<=4 || form.hlPos.value<=4) && form.hlComments.value=="")
|| ((form.ljPrompt.value<=4 || form.ljAppear.value<=4 || form.ljAtt.value<=4 || form.ljMech.value<=4 || form.ljRules.value<=4 || form.ljPos.value<=4) && form.ljComments.value=="")
|| ((form.bjPrompt.value<=4 || form.bjAppear.value<=4 || form.bjAtt.value<=4 || form.bjMech.value<=4 || form.bjRules.value<=4 || form.bjPos.value<=4) && form.bjComments.value=="")){
errorMess += " -You rated one or more of the officials, in one or more categories, a ‘4’ or less.\n You need to enter comments to offer feedback and help the official improve!\n"
confirmOff = false;
returnVal = false;
}

if(((form.rPrompt.value == 10 || form.rAppear.value == 10 || form.rAtt.value == 10 || form.rMech.value == 10 || form.rRules.value == 10 || form.rPos.value == 10) && form.rComments.value=="")
|| ((form.uPrompt.value == 10 || form.uAppear.value == 10 || form.uAtt.value == 10 || form.uMech.value == 10 || form.uRules.value == 10 || form.uPos.value == 10) && form.uComments.value=="")
|| ((form.hlPrompt.value == 10 || form.hlAppear.value == 10 || form.hlAtt.value == 10 || form.hlMech.value == 10 || form.hlRules.value == 10 || form.hlPos.value == 10) && form.hlComments.value=="")
|| ((form.ljPrompt.value == 10 || form.ljAppear.value == 10 || form.ljAtt.value == 10 || form.ljMech.value == 10 || form.ljRules.value == 10 || form.ljPos.value == 10) && form.ljComments.value=="")
|| ((form.bjPrompt.value == 10 || form.bjAppear.value == 10 || form.bjAtt.value == 10 || form.bjMech.value == 10 || form.bjRules.value == 10 || form.bjPos.value == 10) && form.bjComments.value==""))
{
errorMess += " -You rated one or more of the officials, in one or more categories, a ‘10’.\n You must enter a comment of at least 20 words to justify the 10 rating!\n"
confirmOff = false;
returnVal = false;
}

if(confirmOff){
if(form.r.value==“none” || form.u.value==“none” || form.hl.value==“none” || form.lj.value==“none” || form.bj.value==“none”){
returnVal = confirm(“An official is not selected for all positions.\n Are you sure you want to submit the form?”);
}

}else{
alert(errorMess);
}
return returnVal;
}

This iteration works fine but it checks that the comment fields are empty, not a minimum word count.

Can anyone help?

Hi there,

Firstly, this is JavaScript posted on a PHP forum… probably would have been better off posting elsewhere. Secondly, I am nice and will part with my advice anyway!

JavaScript is not my strong point but could you not do:

if(form.comments.value.length >= 20)

(You may want to leave out the .value but I am not sure - might test it later, but don’t have time at the moment)

If this doesn’t work/help, I’ll be back later or maybe someone else with more JavaScript knowledge will drop in.

Sponsor our Newsletter | Privacy Policy | Terms of Service