使jQuery上的PHP变量循环每个函数

时间:2019-04-29 11:40:44

标签: php jquery

因此,我试图验证购物车中的物品,方法是在用户的物品数量大于库存时隐藏“添加”按钮,只要其中有一个物品,代码就可以正常工作,但是当有多个物品时, stock变量仅获取购物车中最后一件商品的库存,而不是全部

这是我的下面的代码

$('.quantity-val').each(function() {
                var initialQuantity = parseInt($(this).text());
                if (initialQuantity === 0) {
                    $(this).siblings('.fa-minus-circle').hide();
                }

                var quantity = '<?php echo $details['stock'] ?>';

                console.log(initialQuantity);
                console.log(quantity);

                if (initialQuantity == quantity) {
                    $(this).siblings('.fa-plus-circle').hide();
                }

            });

我相信我需要具体说明数量变量,但不确定如何做。

任何帮助将不胜感激!

解决方案

我无法回答这个问题,因为它被标记为重复(不是),但是我给了quantity-val类一个数据属性,例如data-stock="{{ $details['stock'] }}",然后将我的JS函数中的变量更改为

var stock_quantity = $(this).attr('data-stock');


                if (initialQuantity == stock_quantity) {
                    $(this).siblings('.fa-plus-circle').hide();
                }

1 个答案:

答案 0 :(得分:0)

您不能将PHP放入JS。 仅当将JavaScript放在<script>文件中的.php标记内时,此方法才有效。 如果要将JavaScript提取到单独的.js文件中,建议将PHP值存储在全局变量中,然后在JS中访问

<script>
  window.quantity = <?= $details['stock'] ?>
</script>
var quantity = window.quantity;