JS实现计算表单内下拉列表内所有值的总和!求高手贴代码!!!万分感谢!!! 10
用户在进行下拉选择分数的,最下方的文本框自动算出当前已选列表值的总和,最后表单提交的时候,判断用户是否所有下拉项都已选择,如有某下拉列表没有选择,则弹出警告!!感觉这个好...
用户在进行下拉选择分数的,最下方的文本框自动算出当前已选列表值的总和,最后表单提交的时候,判断用户是否所有下拉项都已选择,如有某下拉列表没有选择,则弹出警告!!感觉这个好难实现啊,求助高手!!!万分感谢!!!
展开
1个回答
展开全部
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
</head>
<body>
<form onsubmit="return allSelected();">
得分项1:
<select id="sel1">
<option value="0">请打分</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
得分项2:
<select id="sel2">
<option value="0">请打分</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
得分项3:
<select id="sel3">
<option value="0">请打分</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
得分项4:
<select id="sel4">
<option value="0">请打分</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
得分项5:
<select id="sel5">
<option value="0">请打分</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
<input id="sum"/>
<input type="submit" value="提交"/>
</form>
<script type="text/javascript">
<!--
window.onload = function(){
for(var i=1;i<=5;i++){
document.forms[0]["sel" + i].onchange = getSum;
}
}
function getSum(){
var sum = 0;
for(var i=1;i<=5;i++){
var val = document.getElementById("sel" + i).value;
sum += parseFloat(val);
}
document.getElementById('sum').value = sum;
}
function allSelected(){
for(var i=1;i<=5;i++){
if(document.getElementById("sel" + i).value == 0){
alert('请为所有的得分项打分!');
return false;
}
}
return true;
}
//-->
</script>
</body>
</html>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询