我试图将名为qty1的文本框的内容乘以使用ajax检索的选择框中的价格。
<script type="text/javascript" charset="utf-8">
$(document).ready(function(){
$('#stock1').on('change', function (){
var newValue1 = $.getJSON('select2.php', {stockID: $(this).val()}, function(data){
var options = '';
for (var x = 0; x < data.length; x++) {
options += data[x]['priceeach'];
}
$('#priceeach1').text(options);
var qty1 = $("#qty1").text();
var priceeach1 = $("#priceeach1").text();
$('#linetotal1').text(priceeach1 * qty1);
});
});
});
</script>
<script>
脚本会更改此html中的值:
Price Each : £<span id="priceeach1"></span> - Line Total : £<span id="linetotal1"></span>
priceeach1值已更改,但linetotal1值保持为0,即使更改了选择框或更改了qty1中的值也是如此。应该发生的是从下拉列表中的priceeach1乘以文本框qty1。例如,如果priceeach1 = 20.00且qty1为2 linetotal1则为40.00,但我现在得到的只是0。
答案 0 :(得分:2)
您在说明中所说的qty1
是一个文本框。并且您使用text()
属性获得了它的价值。这就是为什么你得到答案的空白。
使用.val()
property获取文本框的值。
答案 1 :(得分:1)
您必须使用Float
Int
或parseFloat or parseInt
var qty1 = $("#qty1").html();
var priceeach1 = $("#priceeach1").html();
var total=parseFloat(priceeach1) * parseInt(qty1);
$('#linetotal1').html(total);