有一個客戶端,我已經爲此構建了一個簡單的表單進行基本計算。有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