AJAX不发送数据

时间:2015-10-24 01:17:41

标签: javascript php jquery ajax

我使用以下代码从输入字段获取数据并通过POST将其发送到PHP,但它无法正常工作

<script type="text/javascript">
  $(document).ready(function () {
      $("#id_1").change(function () {
          var rat1 = $(this).val();
          $.ajax({
              url: "upload.php",
              type: "post",
              data: rat1,
              success: function (response) {
                  // you will get response from your php page (what you echo or print)

              },
              error: function(jqXHR, textStatus, errorThrown) {
                  console.log(textStatus, errorThrown);
              }


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

这是输入表格

<input type="number" name="your_awesome_parameter" id="id_1" class="rating" data-clearable="remove"
                           data-icon-lib="fa" data-active-icon="fa-heart" data-inactive-icon="fa-heart-o"
                           data-clearable-icon="fa-trash-o"/>

4 个答案:

答案 0 :(得分:2)

您需要提供参数的名称。它应该是:

data: { param_name: rat1 }

然后在upload.php中使用$_POST['param_name']

访问它

答案 1 :(得分:1)

以防万一,你是否将Jquery导入了你的项目? 我测试了你的代码,我用Barmar指定的小改动,它对我有效。

尝试在php文件中使用此代码,看看您是否在开发人员工具控制台中得到任何响应。

$data = $_POST["param_name"];
echo json_encode([$data]);

答案 2 :(得分:0)

以这种方式尝试男人

location / {
    proxy_max_temp_file_size 0;
}

}

答案 3 :(得分:0)

输入类型change上的

number在旧版浏览器中不起作用,我认为不确定。但是,当您使用输入类型number时,请尝试以下解决方案。

$("#id_1").on("mouseup keyup",function () {
    //your logic here
});

并传递其他人已经提到的数据:

data: { param_name: rat1 }