87,910
社区成员
发帖
与我相关
我的任务
分享
function setPerc(value) {
if(Number(value) > Number(document.all.assgVol.value)) {
alert("输入数量大于总量");
return;
}
var ttv = document.getElementById("tt").value;
ttv = ttv*1+value*1;
alert(ttv);
}
<td><input type="text" name="assgVol" value="27"></td>
<% for (int i=0; i<5; i++) { %>
<td>
<input type="hidden" id="tt" name="tt" value="">
<input type="text" name="vol<%=i%>" value="" onchange="setPerc(this.value)">
</td>
<% } %>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'test.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<script type="text/javascript">
function setPerc(obj){
/*
进行数字校验
*/
var regExp = /^\d+$/g;
var isNumber = regExp.test(obj.value);
if(!isNumber){
alert('请输入数字!');
obj.value = '';
obj.focus();
return;
}
var totalValue = parseInt(document.getElementById('assgVolId').value);
var compareValue = 0;//定义全局变量,用来进行比较的
for(var i = 0 ; i < 5 ; i++){
var tempValue = document.getElementById('testId' + i ).value;//根据ID得到数值
if(tempValue == '' || tempValue == null){
tempValue = 0;
}else{
tempValue = parseInt(tempValue);
}
compareValue = compareValue + tempValue;
}
if(compareValue > totalValue){
alert('总数是: ' + totalValue + ',输入的数字之和已经超过总数!');
return;
}
}
</script>
</head>
<body>
<table style="width:800;border:1 solid black;">
<tr>
<td><input type="text" id="assgVolId" name="assgVol" value="27"/></td>
<%for(int i = 0 ; i < 5 ; i++){ %>
<td>
<input type="text" id="testId<%=i %>" name="vol<%=i %>" onkeyup="setPerc(this)">
</td>
<%} %>
</tr>
</table>
</body>
</html>