我的脚本只返回第一个项目

时间:2017-06-08 10:37:00

标签: javascript c# asp.net-ajax

我正在使用asp.net / c#进行编码,我正在尝试使用ajax获取产品的ID和数量。问题是我的代码只能识别第一个项目,否则如果我试图输入第三个产品的数量,我会收到一个错误,说我没有提供任何数量。

这是我的代码:

      <script type="text/javascript">
$(function() {
    $('.Sendparams').click(function (e) {
  e.preventDefault();
    debugger;
//  var  id = $(this).attr('id');
    var quant = $("#quant").val();
var id = $("#id").val();

    $.ajax({
        type: 'GET',
        url: '/ShoppingCart/AddToCart',
        data:{ "id": id , "quant": quant },
    success: function (response) {
            $("#mainContainerCenter").html(response); } });});
  });
</script>
  <section class="content">
  <!-- Small boxes (Stat box) -->
    <div class="row">    

   @foreach (var album in Model.Produits)
  {


            <div class="col-lg-3 col-xs-6">
                @Html.Hidden("id", album.ProduitId, new { @id = "id" })<br/>

              @album.Nom_Produit<br />
             @album.Categorie.Nom_categorie<br />
               @String.Format("{0:F}", album.Prix)<br />
               @Html.TextBox("quant", null, new { id = "quant" })<br />
                @Html.ActionLink("voila", "AddToCart", "ShoppingCart", new { id = album.ProduitId }, new { @class = "Sendparams" })<br />

            </div> 
    }

     </div>

1 个答案:

答案 0 :(得分:0)

id属性将是uniq值。在你的情况下,id不是uniq,你使用&#34; quant&#34;所有项目的值(id =&#34; quant&#34;)。如果我正确理解您尝试执行的操作,则代码可以提供帮助:https://jsfiddle.net/9usvg6wv/

&#13;
&#13;
$(".item").submit(function( event ) {
  $('#clickedid').text(
  	$(this).find('input[name="id"]').val()
  );
  $('#clickedquant').text(
  	$(this).find('input[name="quant"]').val()
  );
  console.log($(this).find('input[name="quant"]').val());
  event.preventDefault();
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
    <form action="" class="item" >
      <input type="hidden" name="id" value="1" />
      <input type="text" name="quant" value="100" />
      <input type="submit" class="" >
    </form>
    
    <form action="" class="item" >
      <input type="hidden" name="id" value="2" />
      <input type="text" name="quant" value="200" />
      <input type="submit" class="" >
    </form>
    
    <form action="" class="item" >
      <input type="hidden" name="id" value="3" />
      <input type="text" name="quant" value="300" />
      <input type="submit" class="" >
    </form>
    
    <form action="" class="item" >
      <input type="hidden" name="id" value="4" />
      <input type="text" name="quant" value="400" />
      <input type="submit" class="" >
    </form>
</div> 

<div>
Clicked id:<span id="clickedid"></span>; quant:<span id="clickedquant"></span>
</div>
&#13;
&#13;
&#13;