表内输入的 JQuery 计算
Posted
技术标签:
【中文标题】表内输入的 JQuery 计算【英文标题】:JQuery Calculation on inputs within table 【发布时间】:2014-07-22 15:37:54 【问题描述】:我正在使用 jquerymobile 在 phonegap 中开发一个简单的 ios 应用程序。我正在尝试对表中的输入进行简单的计算,但我不能让它太工作。它适用于前两个输入,但是一旦我为第三个计算添加了 jQuery,它就会失去所有功能。 我有以下 html
<table>
<tbody>
<tr>
<td class="tabledata">Fuel </td>
<td class="tabledata"> Gallonn </td>
<td ><input id="a" type="text"></input></td>
<td class="tabledata" >138690</td>
<td class="tabledata"><span id="c"></span></td>
</tr>
<tr>
<td class="tabledata" >Electricity</td>
<td>KiloWatt-hour (kWH)</td>
<td ><input type="text" id="d"></input></td>
<td class="tabledata">3,412</td>
<td class="tabledata" ><span id="e"></span></td>
</tr>
<tr>
<td class="tabledata" >Natural Gas*</td>
<td class="tabledata" >Therm**</td>
<td><input type="text" id="f"></input></td>
<td class="tabledata" >100,000</td>
<td class="tabledata" ><span id="g"></span></td>
</tr>
</tbody>
</table>
和下面的脚本
$(document).ready(function()
function compute()
var a = parseInt($('#a').val(), 10);
var c = (a / 138690) * 1000000;
var cc = c.toFixed(2);
var d = parseInt($('#d').val(), 10);
var e = (d / 3412) * 1000000;
var ee = e.toFixed(2);
var f = parseInt($('#f').val(), 10);
var g = (f / 100000) * 1000000;
var gg = g.toFxed(2);
$('#c').text(cc);
$('#e').text(ee);
$('#g').text(gg);
$('#a, #d, #f ').change(compute);
);
</script>
我使用的是 jQuery 版本 1.91。
【问题讨论】:
【参考方案1】:您的代码中有错字:
var gg = g.toFxed(2);
将其更改为 .toFixed
并在 JSFiddle 中为我工作:http://jsfiddle.net/M5LKU/
【讨论】:
我已经看了好几个小时了,不知何故一直错过了这个。无论如何,感谢您的帮助,它现在完美运行。 很高兴它成功了。将来,如果您遇到 javascript 问题,您可能希望使用 Firebug 或 Chrome 开发人员工具等工具,因为它们会迅速提醒您此类事情。它会为你节省大量的头发拉扯。 :)【参考方案2】:将g.toFxed(2)
更改为g.toFixed(2)
。
只是一个错别字
【讨论】:
【参考方案3】:您在这里错过了“toFixed”函数名称中的字母“i”:
var gg = g.toFxed(2);
【讨论】:
@BenDyer .. 你在哪里第一;)以上是关于表内输入的 JQuery 计算的主要内容,如果未能解决你的问题,请参考以下文章