AJAX帖子无法正常工作,但我得到200 OK

时间:2016-06-14 14:01:11

标签: php jquery ajax forms

我无法检索PHP文件的post值。这是我的代码:

HTML

<div class="add_to_cart">
   <input class="product_id" name="product_id" value="989" type="hidden">
   <input class="cart_btn" type="submit" name="add" value="Προσθήκη στο καλάθι">
</div>

AJAX请求

<script>
    $(document).ready(function(){
    $(".cart_btn").click(function(){
    var id=$(".product_id").val();
    var dataString = 'id='+ id;
    $.ajax({
        type: "POST",
        url: "ajax/add_to_cart.php",
        data: dataString,
        cache: false,

        });

    });
});
</script>

add_to_cart.php

<?php


        $test = $_POST['id'];
        echo $test;

?>

我收到以下错误

  

注意:未定义索引:K:\ Xampp中的id

2 个答案:

答案 0 :(得分:0)

我认为.cart-btn,可能是<a/><button/>,在致电undefined时会返回.val(),因为它{&#39}}不是输入。

尝试硬编码该字符串作为开始; var id = "testing purposes"

如果可行,您可以将产品ID放在数据属性中:

<a class="cart_btn" data-product-id="2">Add to cart</a>

..并按以下方式访问:var id = $(this).data('product-id');

答案 1 :(得分:-1)

只需使用jquery $ .post方法

即可
<script>
     $(document).ready(function(){
      $(".cart_btn").click(function(e){
      e.preventDefault();   
      //var product_id=$(this).val(); // Button value "Προσθήκη στο καλάθι"
      var product_id = $('.product_id').val(); // Hiddent input value "989"
        $.post( "ajax/add_to_cart.php", { id: product_id}, function(resp){

        });
   })
});
</script>