【发布时间】:2021-03-31 13:10:01
【问题描述】:
我有一个购物车刀片页面,上面显示了带有 ajax 添加到购物车操作的产品。单击按钮时,我想使用 name=quantity 获取输入的值。我想用 jquery prev() 函数来做到这一点,因为代码是正确的,但它不能显示任何警报。也许它无法识别类。那么我该怎么做呢?我有
//Update Cart Items
$(document).on("click", ".btnItemUpdate", function() {
if ($(this).hasClass("qtyMinus")) {
var quantity = $(this).prev().val();
console.log(quantity);
return false;
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="cart_quantity_button">
<input class="cart_quantity_input" type="text" name="quantity" value="0" autocomplete="off" size="1" disabled>
<button class="btnItemUpdate qtyMinus" type="button" data-cartid="{{$item['id']}}"> - </button>
<button class="btnItemUpdate qtyPlus" type="button" data-cartid="{{$item['id']}}"> + </button>
</div>
【问题讨论】:
-
对我来说工作得很好。
-
第二个按钮不起作用,因为前一个元素是另一个按钮,不是您想要的输入
-
将
$(this).prev().val();更改为$(this).closest(".cart_quantity_button").find(".cart_quantity_input").val()以便它适用于两个按钮。 -
显示的代码适用于减号按钮。未显示的内容是错误的
-
您是否已将 jQuery 代码放入 document.ready 处理程序中?控制台有错误吗?