对表内输入的JQuery计算

时间:2014-07-22 15:37:54

标签: javascript jquery html ios cordova

我正在使用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。

3 个答案:

答案 0 :(得分:3)

您的代码中有拼写错误:

var gg = g.toFxed(2);

将其更改为.toFixed,它在JSFiddle中适用于我:http://jsfiddle.net/M5LKU/

答案 1 :(得分:0)

你错过了“toFixed”函数名称中的字母“i”:

var gg = g.toFxed(2);

答案 2 :(得分:0)

g.toFxed(2)更改为g.toFixed(2)。 只是一个错字