我想平均來自四(4)個輸入字段(最小值爲0,最大值爲100)的數字,並立即動態顯示結果(即不重新加載頁面)任何字段都被填充。然後在最後一列中,對於也是動態的等級。應顯示A的值爲80至100,藍色的單元格,B的值爲60至80,綠色的單元格等等。但等級不起作用。我也想使用ajax動態地將數據輸入到數據庫中,但我不知道如何去做。以下是我所想到的。提前致謝。下面是代碼如何平均數字並動態顯示結果
$('#input1').keyup(function() {
evaluate();
});
$('#input2').keyup(function() {
evaluate();
});
$('#input3').keyup(function() {
evaluate();
});
$('#input4').keyup(function() {
evaluate();
});
var evaluate = function() {
var input1 = parseInt($('#input1').val());
var input2 = parseInt($('#input2').val());
var input3 = parseInt($('#input3').val());
var input4 = parseInt($('#input4').val());
if (isNaN(input1) || isNaN(input2) || isNaN(input3) || isNaN(input4)) {
$('#error').text('Inputs must be numbers');
} else {
var ave = (input1 + input2 + input3 + input4)/4;
$('#total').text(input1 + input2 + input3 + input4);
$('#ave').text(ave);
switch (ave) {
case 100 <= ave >= 80:
$('#grade').text('<div bgcolor="blue">A</div>');
break;
case 80 <ave>= 60:
$('#grade').text('<div bgcolor="green">B</div>');
break;
case 60 <ave>= 40:
$('#grade').text('<div bgcolor="yellow">C</div>');
break;
case 40 <ave>= 20:
$('#grade').text('<div bgcolor="red">D</div>');
break;
case 20 <ave>= 0:
$('#grade').text('<div bgcolor="green">E</div>');
break;
default:
$('#grade').text('<div>--</div>');
}
}
};
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table>
<tr>
<th>Input 1</th>
<th>Input 2</th>
<th>Input 3</th>
<th>Input 4</th>
<th>Total</th>
<th>Average</th>
<th>Grade</th>
</tr>
<tr>
<td>
<input id="input1" name="input1" size="1px" />
</td>
<td>
<input id="input2" name="input2" size="1px" />
</td>
<td>
<input id="input3" name="input3" size="1px" />
</td>
<td>
<input id="input4" name="input4" size="1px" />
</td>
<td id="total"></td>
<td id="ave"></td>
<td id="grade"></td>
</tr>
</table>
<div id="error"></div>
由於它的工作。但是,當我嘗試應用表格時,在while循環中從數據庫表中獲取學生行時,它不起作用。每個輸入字段都使用數組插入到數據庫中。我試圖計算最後三列中的總數,平均數和總數,但不起作用。 – Flourish
@ user3636615我已經發布了一個[小提琴](http://jsfiddle.net/3p5htb0b/1/)與腳本的更新版本,請檢查出來。更新後的版本支持動態輸入量。 – halfzebra
Kkkk ...我查過了,我看到了更新。但我試圖應用到表中將行從數據庫中提取。所以每個學生都會有他/她的排。名稱是每個輸入字段是類似於exe [],但它們都具有相同的id,因爲行是循環while循環。 – Flourish