Javascript / Ajax / Jquery在更改时动态计算表单

时间:2011-02-16 02:06:32

标签: javascript jquery ajax dynamic

我有一个小表单,将从Mysql和人工输入填充。我想要做的是根据其他字段填充3个其他字段。

示例:

Total Parts(Mysql)

人工(用户)

其他(用户)

小计(动态总数)

税(动态计算高于 - 低* 13%)

总计(子+税)

我已经四处搜索但是找不到我要找的东西,而且我的技能在Javascript / Ajax / Jquery中为零,所以我无法修改任何工作,虽然我已经尝试过很糟糕。

有人可以帮我解决这个问题,或者指出一个可能符合我需求的脚本。

由于

2 个答案:

答案 0 :(得分:1)

好的抱歉,我以为你在寻找一些复杂的代码。以下是您正在寻找的一个简单示例。

<html>
<head>
</head>
<body>
<script>
function doMath() {
    var totalparts = parseInt(document.getElementById('parts_input').value);
    var labor = parseInt(document.getElementById('labor_input').value);
    var misc = parseInt(document.getElementById('misc_input').value);
    var subtotal = totalparts + labor + misc;
    var tax = subtotal * .13;
    var total = subtotal + tax;

    document.getElementById('subtotal_input').value = subtotal;
    document.getElementById('tax_input').value = tax;
    document.getElementById('total_input').value = total;
}
</script>

<div>Total Parts: <input type="text" id="parts_input" value="1" readonly="true" /></div>
<div>Labor: <input type="text" id="labor_input" onBlur="doMath();" /></div>
<div>Misc: <input type="text" id="misc_input" onBlur="doMath();" /></div>
<div>Sub Total: <input type="text" id="subtotal_input" readonly="true" /></div>
<div>Tax: <input type="text" id="tax_input" readonly="true" /></div>
<div>Total: <input type="text" id="total_input" readonly="true" /></div>
</body>
</html>

显然,这并没有从数据库中获取动态值。如果你使用PHP,你可以交换这一行:

<div>Total Parts: <input type="text" id="parts_input" value="1" readonly="true" /></div>

对于这样的人:

<div>Total Parts: <input type="text" id="parts_input" value="<?PHP include('getTotalParts.php'); ?>" readonly="true" /></div>

getTotalParts.php是您获取数据库信息的文件。它可以简单地获取信息并执行“echo $ totalParts;”

答案 1 :(得分:0)

您可以使用onblur(当用户离开每个输入字段时激活)来计算字段。

...<input name="labour" id=total onblur="$('#total').val($('#sub').val() + $('#tax').va())">

您没有提供足够的信息来评论“总计部件”字段。