2016-05-13 23 views
0
<div id="container"> 
    <div class="jumbotron" id="group"> 
    <form class="form-inline"> 
     <div class="form-group"> 
     <label for="groupNumber">Group:</label> 
     <input type="text" class="groupNumber" /> 
     </div> 
     <div class="form-group inputTop"> 
     <label for="quantity">Quantity:</label> 
     <input type="text" class="quantity" /> 
     </div> 
    <div class="form-group inputTop"> 
     <label for="systemPrice">System Price:</label> 
     <input type="text" class="systemPrice" /> 
    </div> 
    <div class="form-group"> 
     <label for="groupTotal">Group Total:</label> 
     <input type="text" class="groupTotal" /> 
    </div> 
    </form> 

    <div class="row specs" id="pasted" contenteditable="true"></div> 

    </div> 
</div> 

$(document).ready(function() { 
    $('.inputTop input').keyup(multInputs); 

    function multInputs() { 
    $('.inputTop').each(function() { 
     var $quantity = $('.quantity', this).val(); 
     var $systemPrice = $('.systemPrice', this).val(); 
     var $groupTotal = ($quantity * 1) * ($systemPrice * 1) 
    $('.groupTotal', this).text($groupTotal); 
    }); 
    } 
}); 

JS小提琴:https://jsfiddle.net/waynebunch/jh6uhL1p/5/jQuery的 - 我乘两个班没有给出结果

我已经在这个凝望了一会儿,我没有看到任何错误。基本上,我试图用JQuery将var $quantity乘以var $systemPrice,结果显示在var $groupTotal。这些会有多个“组”。有人能告诉我我在这里做错了什么,或者如果我走了吗?谢谢!

+0

仅供参考,您不需要:'($ quantity * 1)*($ systemPrice * 1)'。您可以执行'$ quantity * $ systemPrice',因为乘法运算符会自动将字符串转换为数字。 – 2016-05-13 17:01:30

+1

@squint你是对的,谢谢! –

回答

0

替换:

$('.groupTotal', this).text($groupTotal); 

有了:

$('.groupTotal', this).val($groupTotal); 
+0

我讨厌什么时候好像很容易。谢谢,这个修好了! –

0

应该

$('.groupTotal', this).val($groupTotal); 

因为.groupTotalinput

0

你应该试试这个功能:

function multInputs() { 

$('.group').each(function() { 
    var $quantity = $('.quantity', this).val(); 
    var $systemPrice = $('.systemPrice', this).val(); 
    var $groupTotal = (parseInt($quantity) * 1) * (parseInt($systemPrice) * 1) 

    if(isNaN($groupTotal)) 
    $('.groupTotal', this).val(''); 
    else 
    $('.groupTotal', this).val($groupTotal); 
}); 

我希望你能得到导致要

0

除了什么其他人说(用val而不是text),你也在错误的选择器上调用each方法。

quantity类和systemprice的元素是inputtop类的元素不孩子。相反,使用

$(".form-inline").each(...); 
+0

明白了,谢谢!这肯定有助于我克隆它看起来像的团体。 –