<script language="javascript">
function checkForm()
{
if (document.AddUserForm.guo.value=="")
{
alert("请选择至少一个购买选项!\n\n(点击数量后面的圆框即可选择)");
}
else if (document.AddUserForm.shu.value=="")
{
alert("请选择至少一个购买选项!!\n\n(点击数量后面的圆框即可选择)");
}
else if (document.AddUserForm.a0.value==""||document.AddUserForm.a0.value=="0"||document.AddUserForm.a0.value=="00")
{
alert("选择购买月卡时月份不为能0!");
}
else if (document.AddUserForm.a1.value==""||document.AddUserForm.a1.value=="0"||document.AddUserForm.a1.value=="00"||document.AddUserForm.a1.value=="000")
{
alert("选择购买年卡时年限不为能0!");
}
else {
document.AddUserForm.submit();
}
}
function dataCal(){
var shum=0;
var sum=0;
var str = "";
var obj=document.getElementsByName("items[]"); //取得页面所有的items复选框对象
for(var i=0;i<obj.length;i++)
{
if(!obj[i].checked)
continue; //如果没有选中,则执行下一次
shum+=parseFloat(obj[i].shu); //如果被选中的话,则累加求和
sum+=parseFloat(obj[i].dingid*document.getElementById('b'+i).value); //如果被选中的话,则累加求和
str += obj[i].value+"×"+document.getElementById('b'+i).value+document.getElementById('b'+i).unit+",";
}
AddUserForm.shu.value=+shum;
AddUserForm.jieguo.value=+sum;
AddUserForm.guo.value=str;
alert("您当前已选购:"+str+"总价为: "+sum+" 元");
}
</script>
<form name=AddUserForm method="POST" action="form.asp">
<table border="1" align="center" cellpadding="3" width="100%">
<tr bgColor="#dee3e7">
<td align="center">选择类型</td>
<td align="center">金额</td>
<td align="center">数量</td>
<td align="center">选择</td>
</tr>
<tr>
<td align="center">月卡</td>
<td align="center">100元/月</td>
<td align="center"><select size="1" name="a0" id='b0' unit="月">
<option value="1" selected>1 月</option>
<option value="2">2 月</option>
<option value="3">3 月</option>
<option value="4">4 月</option>
<option value="5">5 月</option>
<option value="6">6 月</option>
<option value="7">7 月</option>
<option value="8">8 月</option>
<option value="9">9 月</option>
<option value="10">10月</option>
<option value="11">11月</option>
</select></td>
<td align="center"><input type="radio" value="购买月卡" name="items[]" onclick="dataCal(this,'b0')" dingid="100" shu="1"></td>
</tr>
<tr>
<td align="center">年卡</td>
<td align="center">900元/年</td>
<td align="center"><select size="1" name="a1" id='b1' unit="年">
<option value="1" selected>1 年</option>
<option value="2">2 年</option>
<option value="3">3 年</option>
<option value="5">5 年</option>
<option value="10">10年</option>
<option value="20">20年</option>
</select></td>
<td align="center"><input type="radio" value="购买年卡" name="items[]" onclick="dataCal(this,'b1')" dingid="900" shu="2"></td>
</tr>
<tr>
<td align="center" colspan="4"><input type="hidden" name="jieguo" value="0" ><input type="hidden" name="shu" value="" ><input type="hidden" name="guo" value=""><input type="hidden" name="save" value=1><input type="submit" value="提交" onclick="Javascripts:checkForm();return false;"></td>
</tr>
</table></form>
//以上代码,如果先选择 数量 ,再点击后面的 单选 框,是正确的。//但如果先点击后面的 单选 框 ,后重新选择 数量 ,那么就错误的,提交后记录的还是重选择数量之前的选择的数量。//问?怎么可以即使先点击了后面的 单选 框,再点击了重新选择数量,后面已选择的 单选框 自动 取消选择 ?!
请高手帮改正一下代码,谢谢!
function checkForm()
{
if (document.AddUserForm.guo.value=="")
{
alert("请选择至少一个购买选项!\n\n(点击数量后面的圆框即可选择)");
}
else if (document.AddUserForm.shu.value=="")
{
alert("请选择至少一个购买选项!!\n\n(点击数量后面的圆框即可选择)");
}
else if (document.AddUserForm.a0.value==""||document.AddUserForm.a0.value=="0"||document.AddUserForm.a0.value=="00")
{
alert("选择购买月卡时月份不为能0!");
}
else if (document.AddUserForm.a1.value==""||document.AddUserForm.a1.value=="0"||document.AddUserForm.a1.value=="00"||document.AddUserForm.a1.value=="000")
{
alert("选择购买年卡时年限不为能0!");
}
else {
document.AddUserForm.submit();
}
}
function dataCal(){
var shum=0;
var sum=0;
var str = "";
var obj=document.getElementsByName("items[]"); //取得页面所有的items复选框对象
for(var i=0;i<obj.length;i++)
{
if(!obj[i].checked)
continue; //如果没有选中,则执行下一次
shum+=parseFloat(obj[i].shu); //如果被选中的话,则累加求和
sum+=parseFloat(obj[i].dingid*document.getElementById('b'+i).value); //如果被选中的话,则累加求和
str += obj[i].value+"×"+document.getElementById('b'+i).value+document.getElementById('b'+i).unit+",";
}
AddUserForm.shu.value=+shum;
AddUserForm.jieguo.value=+sum;
AddUserForm.guo.value=str;
alert("您当前已选购:"+str+"总价为: "+sum+" 元");
}
</script>
<form name=AddUserForm method="POST" action="form.asp">
<table border="1" align="center" cellpadding="3" width="100%">
<tr bgColor="#dee3e7">
<td align="center">选择类型</td>
<td align="center">金额</td>
<td align="center">数量</td>
<td align="center">选择</td>
</tr>
<tr>
<td align="center">月卡</td>
<td align="center">100元/月</td>
<td align="center"><select size="1" name="a0" id='b0' unit="月">
<option value="1" selected>1 月</option>
<option value="2">2 月</option>
<option value="3">3 月</option>
<option value="4">4 月</option>
<option value="5">5 月</option>
<option value="6">6 月</option>
<option value="7">7 月</option>
<option value="8">8 月</option>
<option value="9">9 月</option>
<option value="10">10月</option>
<option value="11">11月</option>
</select></td>
<td align="center"><input type="radio" value="购买月卡" name="items[]" onclick="dataCal(this,'b0')" dingid="100" shu="1"></td>
</tr>
<tr>
<td align="center">年卡</td>
<td align="center">900元/年</td>
<td align="center"><select size="1" name="a1" id='b1' unit="年">
<option value="1" selected>1 年</option>
<option value="2">2 年</option>
<option value="3">3 年</option>
<option value="5">5 年</option>
<option value="10">10年</option>
<option value="20">20年</option>
</select></td>
<td align="center"><input type="radio" value="购买年卡" name="items[]" onclick="dataCal(this,'b1')" dingid="900" shu="2"></td>
</tr>
<tr>
<td align="center" colspan="4"><input type="hidden" name="jieguo" value="0" ><input type="hidden" name="shu" value="" ><input type="hidden" name="guo" value=""><input type="hidden" name="save" value=1><input type="submit" value="提交" onclick="Javascripts:checkForm();return false;"></td>
</tr>
</table></form>
//以上代码,如果先选择 数量 ,再点击后面的 单选 框,是正确的。//但如果先点击后面的 单选 框 ,后重新选择 数量 ,那么就错误的,提交后记录的还是重选择数量之前的选择的数量。//问?怎么可以即使先点击了后面的 单选 框,再点击了重新选择数量,后面已选择的 单选框 自动 取消选择 ?!
请高手帮改正一下代码,谢谢!
解决方案 »
- 用jquery如何实现点击一栏目实现栏目变色,再点击另一栏目也变色,但原来的变回原色
- ExtJs 表格的表头排列错乱
- 关于js 的history.back()
- 怎么对网站的用户常用链接进行统计和分析
- 如果页面上有两个FORM 用JS中document可以获取所有的对象吗 ?
- 怎样实现打开页面就执行JS
- 有一个显示层的程序,但是点击执行后,浏览器的滚动条总是滚动最上方,该怎么修改
- 如何用javascript检查到checkbox的状态是否被选中?
- easyui tabs 加载时如何自动隐藏
- 单击按钮关闭一个窗口,为何总弹出一个窗口?
- 请教jstree 节点选择问题
- js如何判断返回的数据是json还是xml
<script language="javascript">
function checkForm()
{
if (document.AddUserForm.guo.value=="")
{
alert("请选择至少一个购买选项!\n\n(点击数量后面的圆框即可选择)");
}
else if (document.AddUserForm.shu.value=="")
{
alert("请选择至少一个购买选项!!\n\n(点击数量后面的圆框即可选择)");
}
else if (document.AddUserForm.a0.value==""||document.AddUserForm.a0.value=="0"||document.AddUserForm.a0.value=="00")
{
alert("选择购买月卡时月份不为能0!");
}
else if (document.AddUserForm.a1.value==""||document.AddUserForm.a1.value=="0"||document.AddUserForm.a1.value=="00"||document.AddUserForm.a1.value=="000")
{
alert("选择购买年卡时年限不为能0!");
}
else {
document.AddUserForm.submit();
}
}
function dataCal(n){
var shum=0;
var sum=0;
var str = "";
var obj = document.AddUserForm.elements["items[]"][n]
obj.checked = true;
shum+=parseFloat(obj.shu);
sum+=parseFloat(obj.dingid*document.getElementById('b'+n).value);
str += obj.value+"×"+document.getElementById('b'+n).value+document.getElementById('b'+n).unit+",";
document.AddUserForm.shu.value=+shum;
document.AddUserForm.jieguo.value=+sum;
document.AddUserForm.guo.value=str;
alert("您当前已选购:"+str+"总价为: "+sum+" 元");
}
</script>
<form name=AddUserForm method="POST" action="form.asp">
<table border="1" align="center" cellpadding="3" width="100%">
<tr bgColor="#dee3e7">
<td align="center">选择类型</td>
<td align="center">金额</td>
<td align="center">数量</td>
<td align="center">选择</td>
</tr>
<tr>
<td align="center">月卡</td>
<td align="center">100元/月</td>
<td align="center"><select size="1" name="a0" id='b0' unit="月" onchange="dataCal(0);">
<option value="1" selected>1 月</option>
<option value="2">2 月</option>
<option value="3">3 月</option>
<option value="4">4 月</option>
<option value="5">5 月</option>
<option value="6">6 月</option>
<option value="7">7 月</option>
<option value="8">8 月</option>
<option value="9">9 月</option>
<option value="10">10月</option>
<option value="11">11月</option>
</select></td>
<td align="center"><input type="radio" value="购买月卡" name="items[]" onclick="dataCal(0)" dingid="100" shu="1"></td>
</tr>
<tr>
<td align="center">年卡</td>
<td align="center">900元/年</td>
<td align="center"><select size="1" name="a1" id='b1' unit="年" onchange="dataCal(1);">
<option value="1" selected>1 年</option>
<option value="2">2 年</option>
<option value="3">3 年</option>
<option value="5">5 年</option>
<option value="10">10年</option>
<option value="20">20年</option>
</select></td>
<td align="center"><input type="radio" value="购买年卡" name="items[]" onclick="dataCal(1)" dingid="900" shu="2"></td>
</tr>
<tr>
<td align="center" colspan="4"><input type="hidden" name="jieguo" value="0" ><input type="hidden" name="shu" value="" ><input type="hidden" name="guo" value=""><input type="hidden" name="save" value=1><input type="submit" value="提交" onclick="Javascripts:checkForm();return false;"></td>
</tr>
</table></form>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head><body>
<script type="text/javascript">
function checkForm()
{
if (document.AddUserForm.guo.value=="")
{
alert("请选择至少一个购买选项!\n\n(点击数量后面的圆框即可选择)");
}
else if (document.AddUserForm.shu.value=="")
{
alert("请选择至少一个购买选项!!\n\n(点击数量后面的圆框即可选择)");
}
else if (document.AddUserForm.a0.value==""||document.AddUserForm.a0.value=="0"||document.AddUserForm.a0.value=="00")
{
alert("选择购买月卡时月份不为能0!");
}
else if (document.AddUserForm.a1.value==""||document.AddUserForm.a1.value=="0"||document.AddUserForm.a1.value=="00"||document.AddUserForm.a1.value=="000")
{
alert("选择购买年卡时年限不为能0!");
}
else {
document.AddUserForm.submit();
}
}
function dataCal(){
var shum=0;
var sum=0;
var str = "";
var obj=document.getElementsByName("items[]"); //取得页面所有的items复选框对象
for(var i=0;i<obj.length;i++)
{
if(!obj[i].checked)
continue; //如果没有选中,则执行下一次
shum+=parseFloat(obj[i].shu); //如果被选中的话,则累加求和
sum+=parseFloat(obj[i].dingid*document.getElementById('b'+i).value); //如果被选中的话,则累加求和
str += obj[i].value+"×"+document.getElementById('b'+i).value+document.getElementById('b'+i).unit+",";
}
AddUserForm.shu.value=+shum;
AddUserForm.jieguo.value=+sum;
AddUserForm.guo.value=str;
alert("您当前已选购:"+str+"总价为: "+sum+" 元");
}function cancelChecked(){
var obj=document.getElementsByName("items[]"); //取得页面所有的items复选框对象
for(var i=0;i<obj.length;i++) {
if(obj[i].checked) obj[i].checked = false;
}
}
</script>
<form name=AddUserForm method="POST" action="form.asp">
<table border="1" align="center" cellpadding="3" width="100%">
<tr bgColor="#dee3e7">
<td align="center">选择类型</td>
<td align="center">金额</td>
<td align="center">数量</td>
<td align="center">选择</td>
</tr>
<tr>
<td align="center">月卡</td>
<td align="center">100元/月</td>
<td align="center"><select size="1" name="a0" id='b0' unit="月" onchange="cancelChecked()">
<option value="1" selected>1 月</option>
<option value="2">2 月</option>
<option value="3">3 月</option>
<option value="4">4 月</option>
<option value="5">5 月</option>
<option value="6">6 月</option>
<option value="7">7 月</option>
<option value="8">8 月</option>
<option value="9">9 月</option>
<option value="10">10月</option>
<option value="11">11月</option>
</select></td>
<td align="center"><input type="radio" value="购买月卡" name="items[]" onclick="dataCal(this,'b0')" dingid="100" shu="1"></td>
</tr>
<tr>
<td align="center">年卡</td>
<td align="center">900元/年</td>
<td align="center"><select size="1" name="a1" id='b1' unit="年" onchange="cancelChecked()">
<option value="1" selected>1 年</option>
<option value="2">2 年</option>
<option value="3">3 年</option>
<option value="5">5 年</option>
<option value="10">10年</option>
<option value="20">20年</option>
</select></td>
<td align="center"><input type="radio" value="购买年卡" name="items[]" onclick="dataCal(this,'b1')" dingid="900" shu="2"></td>
</tr>
<tr>
<td align="center" colspan="4"><input type="hidden" name="jieguo" value="0" ><input type="hidden" name="shu" value="" ><input type="hidden" name="guo" value=""><input type="hidden" name="save" value=1><input type="submit" value="提交" onclick="Javascripts:checkForm();return false;"></td>
</tr>
</table></form>
</body>
</html>这样?