<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>

解决方案 »

  1.   

    document.AddUserForm.guo 这不是标准的W3C语法 
    给元素加上id 都改为document.getElementById来操作 
    例如:document.getElementById('guo').value
      

  2.   


    <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.getAttribute("shu"));
    sum+=parseFloat(obj.getAttribute("dingid")*document.getElementById('b'+n).value);
    str += obj.value+"×"+document.getElementById('b'+n).value+document.getElementById('b'+n).getAttribute("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>