有一个客户端,我已经为此构建了一个简单的表单进行基本计算。有6次下跌,都包含N/A,1,2,3。最后,从这些下跌中计算总体平均值。客户端想要完全忽略包含N/A含义的任何下拉菜单,如果N/A在6个下拉菜单中的2个下拉菜单中,那么平均值只应该在4个下拉菜单上计算。如果用户选择了N/A,我只是在逻辑上丢失或者如果声明需要告诉整个字段忽略某个下拉字段。 这是我的代码,不工作..请提出一些想法。如何从不包含“N/A”值的下拉列表中计算平均值
<html>
<head><script type="text/javascript">
var aFieldNames = new Array();
aFieldNames["N/A"]=0;
aFieldNames["1"]=1;
aFieldNames["2"]=2;
aFieldNames["3"]=3;
var nCount = 0;
var nSum = 0;
event.value = 0;
for(i = 0; i < aFieldNames.length; i++)
{
if(this.getField(aFieldNames[i]).valueAsString != "N/A")
{
nCount++;
nSum += parseFloat(this.getField(aFieldNames[i]).value);
}
}
if(nCount != 0)
{
event.getElementById("bpover").value = nSum/nCount;
}
</script>
</head>
<body>
<select name="Value[]" onChange="alert(this.value):">
<option name="N/A">N/A</option>
<option name="1">1</option>
<option name="2">2</option>
<option name="3">3</option>
</select><br>
<select name="Value[]" onChange="alert(this.value):">
<option name="N/A">N/A</option>
<option name="1">1</option>
<option name="2">2</option>
<option name="3">3</option>
</select><br>
<select name="Value[]" onChange="alert(this.value):">
<option name="N/A">N/A</option>
<option name="1">1</option>
<option name="2">2</option>
<option name="3">3</option>
</select><br>
<select name="Value[]" onChange="alert(this.value):">
<option name="N/A">N/A</option>
<option name="1">1</option>
<option name="2">2</option>
<option name="3">3</option>
</select><br>
<select name="Value[]" onChange="alert(this.value):">
<option name="N/A">N/A</option>
<option name="1">1</option>
<option name="2">2</option>
<option name="3">3</option>
</select><br>
<br>
avg <input type="text" name="Average" ID="bpover" readonly>
</body>
</html>
哪里是你的代码? –
代码现在可见.. –
@DebasishChoudhury如果一个答案帮助了你,你应该接受它。 – Feathercrown