哪位哥哥帮我改一下JS计算

wei7775 2015-05-18 07:53:04
求大神哥哥帮我改一下JS代码计算.
改成radio点击控制事件.效果如下面2张图

点击乘就以*计算方式。


点击减就以-计算方式。


代码:
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="65001"%>
<!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=utf-8" />
<title>小学学费管理</title>

<script type="text/javascript">
function SumNum()
{
var sumValue
A=document.getElementById('y1').value;
As=document.getElementById('cheng').value;

B=document.getElementById('x1').value;
B1=document.getElementById('z1').value;

C=document.getElementById('x2').value;
C1=document.getElementById('z2').value;

D=document.getElementById('x3').value;
D1=document.getElementById('z3').value;

E=document.getElementById('x4').value;
E1=document.getElementById('z4').value;

F=document.getElementById('x5').value;
F1=document.getElementById('z5').value;

G=document.getElementById('x6').value;
G1=document.getElementById('z6').value;

if (isNaN(B))
{B=0}
sumValue = (A-B1).toFixed(2);//一年级
document.getElementById('x1').value =sumValue;
if (isNaN(C))
{C=0}
sumValue = (A-C1).toFixed(2);//二年级
document.getElementById('x2').value =sumValue;
if (isNaN(D))
{D=0}
sumValue = (A-D1).toFixed(2);//三年级
document.getElementById('x3').value =sumValue;
if (isNaN(E))
{E=0}
sumValue = (A-E1).toFixed(2);//四年级
document.getElementById('x4').value =sumValue;
if (isNaN(F))
{F=0}
sumValue = (A-F1).toFixed(2);//五年级
document.getElementById('x5').value =sumValue;
if (isNaN(G))
{G=0}
sumValue = (A-G1).toFixed(2);//六年级
document.getElementById('x6').value =sumValue;
}
</script>
</head>

<body>
<table width="600" border="1" style="margin:0px auto">
<tr>
<td colspan="3" align="center">文中小学学费管理</td>
</tr>
<tr>
<td width="21%">小学年级</td>
<td width="33%">费用</td>
<td width="46%">优惠方式</td>
</tr>
<tr>
<td width="21%">初交费</td>
<td><input name="y1" type="text" value="2000" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td>
<td>
<label>
<input type="radio" name="cheng" value="-" checked="checked" />
减</label>
<label>
<input name="cheng" type="radio" value="*" />
乘</label></td>
</tr>
<tr>
<td>一年级</td>
<td><input name="x1" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td>
<td><input name="z1" type="text" value="10" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /> 元</td>
</tr>
<tr>
<td>二年级</td>
<td><input name="x2" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td>
<td><input name="z2" type="text" value="20" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" />
元</td>
</tr>
<tr>
<td>三年级</td>
<td><input name="x3" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td>
<td><input name="z3" type="text" value="30" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" />
元</td>
</tr>
<tr>
<td>四年级</td>
<td><input name="x4" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td>
<td><input name="z4" type="text" value="40" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" />
元</td>
</tr>
<tr>
<td>五年级</td>
<td><input name="x5" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td>
<td><input name="z5" type="text" value="50" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" />
元</td>
</tr>
<tr>
<td>六年级</td>
<td><input name="x6" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td>
<td><input name="z6" type="text" value="60" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" />
元</td>
</tr>
<tr>
<td colspan="3">计算方式:<br>
选择乘:一年级=初交学费*B优惠 后面显示<span style="color:#FF0000">%</span>符号<br>
选择减:一年级=初交学费-B优惠 后面显示<span style="color:#FF0000">元</span><br><br>

选择乘:二年级=初交学费*C优惠 后面显示<span style="color:#FF0000">%</span>符号<br>
选择减:二年级=初交学费-C优惠 后面显示<span style="color:#FF0000">元</span><br><br>

选择乘:三年级=初交学费*D优惠 后面显示<span style="color:#FF0000">%</span>符号<br>
选择减:三年级=初交学费-D优惠 后面显示<span style="color:#FF0000">元</span><br><br>
以此类推......</td>
</tr>
</table>
</body>
</html>
...全文
412 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
wei7775 2015-06-03
  • 打赏
  • 举报
回复
谢谢showbo版主大哥和gy127132060大哥. 也感谢关注和回复我帖子的哥哥们.. 已经可以用了.
香蕉猪 2015-06-01
  • 打赏
  • 举报
回复
运行效果如下图:
香蕉猪 2015-06-01
  • 打赏
  • 举报
回复
引用 8 楼 wei7775 的回复:
谢谢showbo版主帮忙,测试到您写的是正确的,但是出现了另外一个问题, 在增加一个input文本输入框或者input按钮都会自动显示到计算结果. 请问一下,这个应该怎么修改? 感谢帮忙.

<!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=utf-8" />
<title>小学学费管理</title>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.2.min.js"></script>
<script>
    function chrUnit(v) { $('#tb label.unit').html(v == '-' ? '元' : '%'); SumNum($('#y1')[0]) }
    function SumNum(o) {
        var y1 = parseFloat($('#y1').val()) || 0, trs, v, minus = $('#minus').attr('checked');
        if (o.id == 'y1') {//初交费变更需要更新所有行,否则只需要更新当前行
            trs = $('#tb tr:gt(2)');
        }
        else trs = $(o).closest('tr');
        console.log(trs)
        trs.each(function () {
            v = parseFloat($('input:eq(1)', this).val()) || 0;
			if(v)
				$('input:eq(0)', this).val((minus ? y1 - v : y1 * v / 100).toFixed(2));
			else ;
        });
    }
    $(function () {
        $('#y1').trigger('keyup');
    });
</script>
</head>
 
<body>
<table width="600" border="1" style="margin:0px auto" id="tb">
<form name="form1" method="post" action="addxuefei_pass.asp">
  <tr>
    <td colspan="3" align="center">文中小学学费管理</td>
  </tr>
  <tr>
    <td width="21%">小学年级</td>
    <td width="33%">费用</td>
    <td width="46%">优惠方式</td>
  </tr>
  <tr>
    <td width="21%">初交费</td>
    <td><input name="y1" id="y1" type="text" value="2000" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /></td>
    <td>
      <label>
        <input type="radio" name="cheng" id="minus" value="-" checked="checked" onclick="chrUnit(this.value)" />
    减</label>
    <label>
      <input name="cheng" type="radio" value="*" onclick="chrUnit(this.value)" />
    乘</label></td>
  </tr>
  <tr>
    <td>一年级</td>
    <td><input name="x1" type="text" readonly /></td>
    <td><input name="z1" type="text" value="10" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>二年级</td>
    <td><input name="x2" type="text" readonly /></td>
    <td><input name="z2" type="text" value="20" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>三年级</td>
    <td><input name="x3" type="text" readonly /></td>
    <td><input name="z3" type="text" value="30" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>四年级</td>
    <td><input name="x4" type="text" readonly /></td>
    <td><input name="z4" type="text" value="40" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>五年级</td>
    <td><input name="x5" type="text" readonly /></td>
    <td><input name="z5" type="text" value="50" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>六年级</td>
    <td><input name="x6" type="text" readonly /></td>
    <td><input name="z6" type="text" value="60" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>其他备注</td>
    <td colspan="2"><input name="cus" type="text" id="other"/></td>
  </tr>
  <tr>
    <td colspan="3">
	<input type="submit" name="button" id="button" value="提交学费"  class="btn"/>
	<br><br>计算方式:<br>
    选择乘:一年级=初交学费*B优惠 后面显示<span style="color:#FF0000">%</span>符号<br>
    选择减:一年级=初交学费-B优惠 后面显示<span style="color:#FF0000">元</span><br><br>
    
    选择乘:二年级=初交学费*C优惠 后面显示<span style="color:#FF0000">%</span>符号<br>
    选择减:二年级=初交学费-C优惠 后面显示<span style="color:#FF0000">元</span><br><br>
    
    选择乘:三年级=初交学费*D优惠 后面显示<span style="color:#FF0000">%</span>符号<br>
    选择减:三年级=初交学费-D优惠 后面显示<span style="color:#FF0000">元</span><br><br>
    以此类推.....</td>
  </tr>
  </form>
</table>
</body>
</html>
风中的少年 2015-06-01
  • 打赏
  • 举报
回复
亲,分开来写不就好了么。 <!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=utf-8" /> <title>小学学费管理</title> <script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.2.min.js"></script> <script> function chrUnit(v) { $('#tb label.unit').html(v == '-' ? '元' : '%'); SumNum($('#y1')[0]) } function SumNum(o) { var y1 = parseFloat($('#y1').val()) || 0, trs, v, minus = $('#minus').attr('checked'); if (o.id == 'y1') {//初交费变更需要更新所有行,否则只需要更新当前行 trs = $('#tb tr:gt(2)'); } else trs = $(o).closest('tr').not(".other"); console.log(trs) trs.each(function () { v = parseFloat($('input:eq(1)', this).val()) || 0; $('input:eq(0)', this).val((minus ? y1 - v : y1 * v / 100).toFixed(2)); }); } $(function () { $('#y1').trigger('keyup'); }); </script> </head> <body> <form name="form1" method="post" action="addxuefei_pass.asp"> <table width="600" border="1" style="margin:0px auto" id="tb"> <tr> <td colspan="3" align="center">文中小学学费管理</td> </tr> <tr> <td width="21%">小学年级</td> <td width="33%">费用</td> <td width="46%">优惠方式</td> </tr> <tr> <td width="21%">初交费</td> <td><input name="y1" id="y1" type="text" value="2000" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /></td> <td> <label> <input type="radio" name="cheng" id="minus" value="-" checked="checked" onclick="chrUnit(this.value)" /> 减</label> <label> <input name="cheng" type="radio" value="*" onclick="chrUnit(this.value)" /> 乘</label></td> </tr> <tr> <td>一年级</td> <td><input name="x1" type="text" readonly /></td> <td><input name="z1" type="text" value="10" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td> </tr> <tr> <td>二年级</td> <td><input name="x2" type="text" readonly /></td> <td><input name="z2" type="text" value="20" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td> </tr> <tr> <td>三年级</td> <td><input name="x3" type="text" readonly /></td> <td><input name="z3" type="text" value="30" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td> </tr> <tr> <td>四年级</td> <td><input name="x4" type="text" readonly /></td> <td><input name="z4" type="text" value="40" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td> </tr> <tr> <td>五年级</td> <td><input name="x5" type="text" readonly /></td> <td><input name="z5" type="text" value="50" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td> </tr> <tr> <td>六年级</td> <td><input name="x6" type="text" readonly /></td> <td><input name="z6" type="text" value="60" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td> </tr> </table> <table width="600" border="1" style="margin:0px auto"> <tr class="other"> <td>其他备注</td> <td colspan="2"><input name="cus" type="text"/></td> </tr> <tr class="other" > <td colspan="3"><input type="submit" name="button" id="button" value="提交学费" class="btn"/><br><br>计算方式:<br> 选择乘:一年级=初交学费*B优惠 后面显示<span style="color:#FF0000">%</span>符号<br> 选择减:一年级=初交学费-B优惠 后面显示<span style="color:#FF0000">元</span><br><br> 选择乘:二年级=初交学费*C优惠 后面显示<span style="color:#FF0000">%</span>符号<br> 选择减:二年级=初交学费-C优惠 后面显示<span style="color:#FF0000">元</span><br><br> 选择乘:三年级=初交学费*D优惠 后面显示<span style="color:#FF0000">%</span>符号<br> 选择减:三年级=初交学费-D优惠 后面显示<span style="color:#FF0000">元</span><br><br> 以此类推.....</td> </tr> </table> </form> </body> </html>
wei7775 2015-05-31
  • 打赏
  • 举报
回复
引用 5 楼 gy127132060 的回复:
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="65001"%> <!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=utf-8" /> <title>小学学费管理</title> <script type="text/javascript" src="http://www.w3school.com.cn/jquery/jquery.js"></script> <script type="text/javascript"> function danwei(data){ if(data == "1"){ $(".danwei").html("元"); }else if(data == "2"){ $(".danwei").html("%"); } } function SumNum() { var sumValue A=document.getElementById('y1').value; As=document.getElementById('cheng').value; B=document.getElementById('x1').value; B1=document.getElementById('z1').value; C=document.getElementById('x2').value; C1=document.getElementById('z2').value; D=document.getElementById('x3').value; D1=document.getElementById('z3').value; E=document.getElementById('x4').value; E1=document.getElementById('z4').value; F=document.getElementById('x5').value; F1=document.getElementById('z5').value; G=document.getElementById('x6').value; G1=document.getElementById('z6').value; if (isNaN(B)) {B=0} sumValue = (A-B1).toFixed(2);//一年级 document.getElementById('x1').value =sumValue; if (isNaN(C)) {C=0} sumValue = (A-C1).toFixed(2);//二年级 document.getElementById('x2').value =sumValue; if (isNaN(D)) {D=0} sumValue = (A-D1).toFixed(2);//三年级 document.getElementById('x3').value =sumValue; if (isNaN(E)) {E=0} sumValue = (A-E1).toFixed(2);//四年级 document.getElementById('x4').value =sumValue; if (isNaN(F)) {F=0} sumValue = (A-F1).toFixed(2);//五年级 document.getElementById('x5').value =sumValue; if (isNaN(G)) {G=0} sumValue = (A-G1).toFixed(2);//六年级 document.getElementById('x6').value =sumValue; } </script> </head> <body> <table width="600" border="1" style="margin:0px auto"> <tr> <td colspan="3" align="center">文中小学学费管理</td> </tr> <tr> <td width="21%">小学年级</td> <td width="33%">费用</td> <td width="46%">优惠方式</td> </tr> <tr> <td width="21%">初交费</td> <td><input name="y1" type="text" value="2000" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td> <label> <input type="radio" name="cheng" value="-" checked="checked" onchange="danwei(1)"/> 减</label> <label> <input name="cheng" type="radio" value="*" onchange="danwei(2)"/> 乘</label></td> </tr> <tr> <td>一年级</td> <td><input name="x1" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td><input name="z1" type="text" value="10" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /> <font class="danwei"> 元</font></td> </tr> <tr> <td>二年级</td> <td><input name="x2" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td><input name="z2" type="text" value="20" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /> <font class="danwei"> 元</font></td> </tr> <tr> <td>三年级</td> <td><input name="x3" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td><input name="z3" type="text" value="30" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /> <font class="danwei">元</font></td> </tr> <tr> <td>四年级</td> <td><input name="x4" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td><input name="z4" type="text" value="40" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /> <font class="danwei">元</font></td> </tr> <tr> <td>五年级</td> <td><input name="x5" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td><input name="z5" type="text" value="50" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /> <font class="danwei">元</font></td> </tr> <tr> <td>六年级</td> <td><input name="x6" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td><input name="z6" type="text" value="60" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /> <font class="danwei">元</font></td> </tr> </table> </body> </html> 帮你解决了单位的修改,运算显示结果在对应地方加入运算就可以了。实时监控输入框改变可能要用到ajax,这个你自己研究。
谢谢帮忙!
wei7775 2015-05-31
  • 打赏
  • 举报
回复
<!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=utf-8" />
<title>小学学费管理</title>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.2.min.js"></script>
<script>
    function chrUnit(v) { $('#tb label.unit').html(v == '-' ? '元' : '%'); SumNum($('#y1')[0]) }
    function SumNum(o) {
        var y1 = parseFloat($('#y1').val()) || 0, trs, v, minus = $('#minus').attr('checked');
        if (o.id == 'y1') {//初交费变更需要更新所有行,否则只需要更新当前行
            trs = $('#tb tr:gt(2)');
        }
        else trs = $(o).closest('tr');
        console.log(trs)
        trs.each(function () {
            v = parseFloat($('input:eq(1)', this).val()) || 0;
            $('input:eq(0)', this).val((minus ? y1 - v : y1 * v / 100).toFixed(2));
        });
    }
    $(function () {
        $('#y1').trigger('keyup');
    });
</script>
</head>
 
<body>
<table width="600" border="1" style="margin:0px auto" id="tb">
<form name="form1" method="post" action="addxuefei_pass.asp">
  <tr>
    <td colspan="3" align="center">文中小学学费管理</td>
  </tr>
  <tr>
    <td width="21%">小学年级</td>
    <td width="33%">费用</td>
    <td width="46%">优惠方式</td>
  </tr>
  <tr>
    <td width="21%">初交费</td>
    <td><input name="y1" id="y1" type="text" value="2000" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /></td>
    <td>
      <label>
        <input type="radio" name="cheng" id="minus" value="-" checked="checked" onclick="chrUnit(this.value)" />
    减</label>
    <label>
      <input name="cheng" type="radio" value="*" onclick="chrUnit(this.value)" />
    乘</label></td>
  </tr>
  <tr>
    <td>一年级</td>
    <td><input name="x1" type="text" readonly /></td>
    <td><input name="z1" type="text" value="10" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>二年级</td>
    <td><input name="x2" type="text" readonly /></td>
    <td><input name="z2" type="text" value="20" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>三年级</td>
    <td><input name="x3" type="text" readonly /></td>
    <td><input name="z3" type="text" value="30" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>四年级</td>
    <td><input name="x4" type="text" readonly /></td>
    <td><input name="z4" type="text" value="40" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>五年级</td>
    <td><input name="x5" type="text" readonly /></td>
    <td><input name="z5" type="text" value="50" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>六年级</td>
    <td><input name="x6" type="text" readonly /></td>
    <td><input name="z6" type="text" value="60" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>其他备注</td>
    <td colspan="2"><input name="cus" type="text"/></td>
  </tr>
  <tr>
    <td colspan="3"><input type="submit" name="button" id="button" value="提交学费"  class="btn"/><br><br>计算方式:<br>
    选择乘:一年级=初交学费*B优惠 后面显示<span style="color:#FF0000">%</span>符号<br>
    选择减:一年级=初交学费-B优惠 后面显示<span style="color:#FF0000">元</span><br><br>
    
    选择乘:二年级=初交学费*C优惠 后面显示<span style="color:#FF0000">%</span>符号<br>
    选择减:二年级=初交学费-C优惠 后面显示<span style="color:#FF0000">元</span><br><br>
    
    选择乘:三年级=初交学费*D优惠 后面显示<span style="color:#FF0000">%</span>符号<br>
    选择减:三年级=初交学费-D优惠 后面显示<span style="color:#FF0000">元</span><br><br>
    以此类推.....</td>
  </tr>
  </form>
</table>
</body>
</html>
wei7775 2015-05-31
  • 打赏
  • 举报
回复
引用 6 楼 showbo 的回复:
单位你也搞个容器括起好更新成元还是%,而且你其他年级费用通过初交学费计算得到的,就不需要输入了,设置readonly
<!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=utf-8" />
<title>小学学费管理</title>
.......

谢谢showbo版主帮忙,测试到您写的是正确的,但是出现了另外一个问题,
在增加一个input文本输入框或者input按钮都会自动显示到计算结果.
请问一下,这个应该怎么修改?
感谢帮忙.


香蕉猪 2015-05-26
  • 打赏
  • 举报
回复
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="65001"%> <!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=utf-8" /> <title>小学学费管理</title> <script type="text/javascript" src="http://www.w3school.com.cn/jquery/jquery.js"></script> <script type="text/javascript"> function danwei(data){ if(data == "1"){ $(".danwei").html("元"); }else if(data == "2"){ $(".danwei").html("%"); } } function SumNum() { var sumValue A=document.getElementById('y1').value; As=document.getElementById('cheng').value; B=document.getElementById('x1').value; B1=document.getElementById('z1').value; C=document.getElementById('x2').value; C1=document.getElementById('z2').value; D=document.getElementById('x3').value; D1=document.getElementById('z3').value; E=document.getElementById('x4').value; E1=document.getElementById('z4').value; F=document.getElementById('x5').value; F1=document.getElementById('z5').value; G=document.getElementById('x6').value; G1=document.getElementById('z6').value; if (isNaN(B)) {B=0} sumValue = (A-B1).toFixed(2);//一年级 document.getElementById('x1').value =sumValue; if (isNaN(C)) {C=0} sumValue = (A-C1).toFixed(2);//二年级 document.getElementById('x2').value =sumValue; if (isNaN(D)) {D=0} sumValue = (A-D1).toFixed(2);//三年级 document.getElementById('x3').value =sumValue; if (isNaN(E)) {E=0} sumValue = (A-E1).toFixed(2);//四年级 document.getElementById('x4').value =sumValue; if (isNaN(F)) {F=0} sumValue = (A-F1).toFixed(2);//五年级 document.getElementById('x5').value =sumValue; if (isNaN(G)) {G=0} sumValue = (A-G1).toFixed(2);//六年级 document.getElementById('x6').value =sumValue; } </script> </head> <body> <table width="600" border="1" style="margin:0px auto"> <tr> <td colspan="3" align="center">文中小学学费管理</td> </tr> <tr> <td width="21%">小学年级</td> <td width="33%">费用</td> <td width="46%">优惠方式</td> </tr> <tr> <td width="21%">初交费</td> <td><input name="y1" type="text" value="2000" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td> <label> <input type="radio" name="cheng" value="-" checked="checked" onchange="danwei(1)"/> 减</label> <label> <input name="cheng" type="radio" value="*" onchange="danwei(2)"/> 乘</label></td> </tr> <tr> <td>一年级</td> <td><input name="x1" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td><input name="z1" type="text" value="10" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /> <font class="danwei"> 元</font></td> </tr> <tr> <td>二年级</td> <td><input name="x2" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td><input name="z2" type="text" value="20" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /> <font class="danwei"> 元</font></td> </tr> <tr> <td>三年级</td> <td><input name="x3" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td><input name="z3" type="text" value="30" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /> <font class="danwei">元</font></td> </tr> <tr> <td>四年级</td> <td><input name="x4" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td><input name="z4" type="text" value="40" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /> <font class="danwei">元</font></td> </tr> <tr> <td>五年级</td> <td><input name="x5" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td><input name="z5" type="text" value="50" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /> <font class="danwei">元</font></td> </tr> <tr> <td>六年级</td> <td><input name="x6" type="text" size="20" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /></td> <td><input name="z6" type="text" value="60" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum();" /> <font class="danwei">元</font></td> </tr> </table> </body> </html> 帮你解决了单位的修改,运算显示结果在对应地方加入运算就可以了。实时监控输入框改变可能要用到ajax,这个你自己研究。
wei7775 2015-05-26
  • 打赏
  • 举报
回复
引用 3 楼 qq_16435051 的回复:
//加个事件 引用JQuery的JS <input name="cheng" type="radio" value="*" onclick='c()'/> function c(){ //把name改为ID $("#x1").val(parseInt($("#y1").val())*parentInt($("#z1").val())); ///类推。。。 ]
大哥,我改了几天测试改不出来.麻烦帮我改个完整的.非常感谢.
Go 旅城通票 2015-05-26
  • 打赏
  • 举报
回复
单位你也搞个容器括起好更新成元还是%,而且你其他年级费用通过初交学费计算得到的,就不需要输入了,设置readonly
<!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=utf-8" />
<title>小学学费管理</title>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.2.min.js"></script>
<script>
    function chrUnit(v) { $('#tb label.unit').html(v == '-' ? '元' : '%'); SumNum($('#y1')[0]) }
    function SumNum(o) {
        var y1 = parseFloat($('#y1').val()) || 0, trs, v, minus = $('#minus').attr('checked');
        if (o.id == 'y1') {//初交费变更需要更新所有行,否则只需要更新当前行
            trs = $('#tb tr:gt(2)');
        }
        else trs = $(o).closest('tr');
        console.log(trs)
        trs.each(function () {
            v = parseFloat($('input:eq(1)', this).val()) || 0;
            $('input:eq(0)', this).val((minus ? y1 - v : y1 * v / 100).toFixed(2));
        });
    }
    $(function () {
        $('#y1').trigger('keyup');
    });
</script>
</head>
 
<body>
<table width="600" border="1" style="margin:0px auto" id="tb">
  <tr>
    <td colspan="3" align="center">文中小学学费管理</td>
  </tr>
  <tr>
    <td width="21%">小学年级</td>
    <td width="33%">费用</td>
    <td width="46%">优惠方式</td>
  </tr>
  <tr>
    <td width="21%">初交费</td>
    <td><input name="y1" id="y1" type="text" value="2000" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /></td>
    <td>
      <label>
        <input type="radio" name="cheng" id="minus" value="-" checked="checked" onclick="chrUnit(this.value)" />
    减</label>
    <label>
      <input name="cheng" type="radio" value="*" onclick="chrUnit(this.value)" />
    乘</label></td>
  </tr>
  <tr>
    <td>一年级</td>
    <td><input name="x1" type="text" readonly /></td>
    <td><input name="z1" type="text" value="10" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>二年级</td>
    <td><input name="x2" type="text" readonly /></td>
    <td><input name="z2" type="text" value="20" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>三年级</td>
    <td><input name="x3" type="text" readonly /></td>
    <td><input name="z3" type="text" value="30" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>四年级</td>
    <td><input name="x4" type="text" readonly /></td>
    <td><input name="z4" type="text" value="40" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>五年级</td>
    <td><input name="x5" type="text" readonly /></td>
    <td><input name="z5" type="text" value="50" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td>六年级</td>
    <td><input name="x6" type="text" readonly /></td>
    <td><input name="z6" type="text" value="60" size="10" onKeyUp="value=value.replace(/[^\d\.]/g,'');SumNum(this);" /> <label class="unit">元</label></td>
  </tr>
  <tr>
    <td colspan="3">计算方式:<br>
    选择乘:一年级=初交学费*B优惠 后面显示<span style="color:#FF0000">%</span>符号<br>
    选择减:一年级=初交学费-B优惠 后面显示<span style="color:#FF0000">元</span><br><br>
     
    选择乘:二年级=初交学费*C优惠 后面显示<span style="color:#FF0000">%</span>符号<br>
    选择减:二年级=初交学费-C优惠 后面显示<span style="color:#FF0000">元</span><br><br>
     
    选择乘:三年级=初交学费*D优惠 后面显示<span style="color:#FF0000">%</span>符号<br>
    选择减:三年级=初交学费-D优惠 后面显示<span style="color:#FF0000">元</span><br><br>
    以此类推......</td>
  </tr>
</table>
</body>
</html>
wei7775 2015-05-19
  • 打赏
  • 举报
回复
引用 1 楼 hefeng_aspnet 的回复:
按钮加上事件 点击的时候获取值计算就好了
大哥,可以帮我写个吗?
csdn_aspnet 2015-05-19
  • 打赏
  • 举报
回复
按钮加上事件 点击的时候获取值计算就好了
qq_16435051 2015-05-19
  • 打赏
  • 举报
回复
//加个事件 引用JQuery的JS <input name="cheng" type="radio" value="*" onclick='c()'/> function c(){ //把name改为ID $("#x1").val(parseInt($("#y1").val())*parentInt($("#z1").val())); ///类推。。。 ]

28,397

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧