codefox
12-05-2002, 07:43 AM
The following code does not work as I expect. I'm trying to find the average of some numbers which are dislayed as radio buttons, as in, there are 10 items each with a rating from 1 to 5 shown as radio buttons and a "not available" radio button. In the following function iRateSum += Number(frmCustFeedback.elements[iItems].value);
does gives a NaN :(
function calculateAvg(iValue)
{
var iItems, iSelectedItems, iRateSum;
for (iItems = iSelectedItems = iRatesum = 0; iItems < frmCustFeedback.elements.length; ++iItems)
if (frmCustFeedback.elements[iItems].type == "radio" &&
frmCustFeedback.elements[iItems].checked &&
frmCustFeedback.elements[iItems].value != "") {
++iSelectedItems;
iRateSum += Number(frmCustFeedback.elements[iItems].value);
}
// Display only if the value is > 0
frmCustFeedback.txtAvg.value = iRateSum / iSelectedItems;
}
does gives a NaN :(
function calculateAvg(iValue)
{
var iItems, iSelectedItems, iRateSum;
for (iItems = iSelectedItems = iRatesum = 0; iItems < frmCustFeedback.elements.length; ++iItems)
if (frmCustFeedback.elements[iItems].type == "radio" &&
frmCustFeedback.elements[iItems].checked &&
frmCustFeedback.elements[iItems].value != "") {
++iSelectedItems;
iRateSum += Number(frmCustFeedback.elements[iItems].value);
}
// Display only if the value is > 0
frmCustFeedback.txtAvg.value = iRateSum / iSelectedItems;
}