获取id并将其传递给ajax的技巧

时间:2017-09-08 02:55:30

标签: javascript php jquery ajax

我有一个ajax函数,它有两个参数来更新我的项目数量。现在我在如何让$product_id传递给我的ajax参数方面遇到了麻烦。我没有任何关于如何通过$product_id来提供我的ajax函数的技巧。 顺便说一句,我正在使用laravel。

这是我的代码:

@foreach($products as $product)
<tr>
    <td class="col-sm-8 col-md-4">
    <div class="media">
        <a class="thumbnail pull-left" href="#"> <img class="media-object" src="http://icons.iconarchive.com/icons/custom-icon-design/flatastic-2/72/product-icon.png" style="width: 72px; height: 72px;"> </a>
        <div class="media-body">
            <h4 class="media-heading"><a href="#">&nbsp; {{ $product['item']->product_name }}</a></h4>
            <!-- <span>Status: </span><span class="text-success">&nbsp;<strong>In Stock</strong></span> -->
        </div>
    </div></td>
    <td class="col-sm-1 col-md-1" style="text-align: center">
    <input type="number" class="form-control" id="productqty" max="{{ $product['maxqty'] }}" min="1" value="{{ $product['qty'] }}">
    </td>
</tr>
@endforeach

现在在我看来,我想在点击input type="number"

时更新我的​​项目数量

这是我的javascript:

$("#productqty").bind('keyup mouseup', function () {
    var value = $(this).val();
    updateQty(?,value);
});

这是我的javascript。现在我想获得所选输入类型编号的product_id。我有很多产品。当我单击输入类型为keyup mouseup的{​​{1}}事件时,如何获取我的确切product_id,以便我可以提供我在其中添加问号的ajax函数参数。 $productqty?是我想要的updateQty(?,value);将被替换。

1 个答案:

答案 0 :(得分:0)

对于事件处理程序,使用id将只处理一个dom,为其使用类:$(".productqty").bind(..)  和

<input type="number" class="form-control productqty" id="" max="{{ $product['maxqty'] }}" min="1" value="{{ $product['qty'] }}">

您需要的简单方法是将产品ID放在输入属性中,现在id可以免费使用,我们可以像以下一样使用它:

<input type="number" class="form-control productqty" id="{{ $product['id'] }}" max="{{ $product['maxqty'] }}" min="1" value="{{ $product['qty'] }}">

你可以使用jquery.attr(),$(this).attr('id');

来获取它
$(".productqty").bind('keyup mouseup', function () {
    var product_id = $(this).attr('id');
    var value = $(this).val();
    updateQty(product_id, value);
});