我是编程初学者。有什么问题我查不出来。当我更改号码时。它没有按我想要的方式工作。
html:
<tr>
<td><?php echo $food ;?></td>
<td id="price"><?php echo $price ;?></td>
<td><input type="text" value="1" id="num"></td>
<td id="total">50</td>
<td><a href="#">X</a></td>
</tr>
jQuery:
$('#num').keyup(function(){
var price = parseInt($('#price').val());
var num = parseInt($('#num').val());
price = price * num;
$('#total').html(price);
});
最佳答案
<td id="price">
是一个表格单元格,因此您无法访问其 value
正如您在这里尝试做的那样
var price = parseInt($('#price').val());
.val()
方法适用于 input
, select
,和textarea
元素,不是 td
元素。根据您实际想做的事情,您有几种选择。我建议使用.text
而不是.val()
.
另外,值得注意的是,您需要调用 .keyup()
仅在元素 #num
之后已加载。为了保证这一点,请使用 $(document).ready()
。完整的javascript代码如下:
$(document).ready(function(){
$('#num').keyup(function(){
var price = parseInt($('#price').text());
var num = parseInt($('#num').val());
price = price * num;
$('#total').html(price);
});
});
关于javascript - Jquery keyup() 函数无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29403584/