首页 > 解决方案 > 从表单中获取 id

问题描述

我在页面上有产品。每个产品都有它的形式。我将 Id 产品保留在隐藏的输入中。

@foreach($product as $p)
    <form>
        <div class="col-lg-2 product">
            <h3>{{$p->name}}</h3>
            <img src="{{$p->image}}" width="200" height="200"><br>
            <h3>{{$p->price}}</h3>
            <button type="submit" onclick="addProductInCart()" >Добавить в корзину</button>
            <input type="hidden"  name = "idVal" value = "{{$p->id}}">
            {{ csrf_field() }}
        </div>
    </form>
@endforeach

我需要在 JS 中获取我选择的产品 ID。

例如:

在此处输入图像描述

我会选择小米红米 Note 4,我必须得到 Id = 1。如果我选​​择魅族,我必须得到 Id = 2。现在我每次都得到两个 Id。

我的 JS 代码:

function addProductInCart() {


    event.preventDefault();
    console.log($('form').serializeArray()); 
    var product = 1;
    var token = $("input[name=_token]").val();
    $.ajax({
        type: "POST",
        url: "addToCart",
        data: {"_token": token, "product": product},
        success: function (result) {
            $("#product-count").html(result);

        }
    })
}

结果: 在此处输入图像描述

我只需要一个 ID,而不是两个。你能帮我吗?

标签: javascriptjquerylaravelforms

解决方案


您不必将其存储在隐藏字段中即可在 addproductInCart() 函数中检索它

您可以使用以下函数传递值

addProductInCart(<?= $p->id ?>)

在功能中,您可以通过以下方式获取 id

addProductInCart($id)
{
    alert($id);
}

推荐阅读