使用jquery无效的输入框中的值总和

时间:2013-10-21 04:30:48

标签: javascript jquery html

我正在创建一个表单,从哈希获取值,并为每个键名称属性<创建三个输入框(具有金额,acNo,debNo) / strong>在我的情况下哈希值和字符串 bed 的组合现在我试图获得输入框中名称中包含“bed”且值为“amount”的值的总和。

 $(document).ready(function(){
 alert('document is loaded');
    $("input[name*='bed'][class='amount']").each(function() {//doen't go in this loop

        alert('in the bed'); //no alert
            $(this).keyup(function(){

                calculateSum();
            });
        });

    });

    function calculateSum() {

        var sum = 0;
        //iterate through each textboxes and add the values
        $("input[name*='bed'][class='amount']").each(function() { 
            //add only if the value is number
            if(!isNaN(this.value) && this.value.length!=0) {
                sum += parseFloat(this.value);
            }

        });
        //.toFixed() method will roundoff the final sum to 2 decimal places
        $("input[name='totalBEDamount']").val(sum.toFixed(2));
    }

我使用上面的jquery来获取值的总和。问题是它可以作为固定布局fixed layout fiddle正常工作,但是当我从散列中选择单选按钮时,代码fiddle with error不起作用?为什么???

1 个答案:

答案 0 :(得分:3)

使用[class='amount']并使用 on() (针对动态创建的元素)代替[class='column']

$(document).ready(function () {
     $(document).on('keyup',"input[name*='bed'][class='amount']", function () {
         var sum = 0;
         //iterate through each textboxes and add the values
         $("input[name*='bed'][class='amount']").each(function () {
             //add only if the value is number
             if (!isNaN(this.value) && this.value.length != 0) {
                 sum += parseFloat(this.value);
             }

         });
         $("input[name='totalBEDamount']").val(sum.toFixed(2));
     });
});

Working Demo