Ajax 不会从 php 文件中检索文件

Ajax wont retrieve the file from php file

大家好,当我添加 console.log 时,这个脚本运行良好,但是当我用 $.ajax() 函数替换 console.log 时,它不会给我从 php 文件返回的结果我使用的 ajax 函数在我的其他项目中工作,但我似乎无法找出为什么它不能在这个片段上工作

这是我的 js 代码:

     $(document).ready(function(){

        $("#qs").find(".chs").each(function(i,obj){
             $(this).addClass("chs"+i);

             $(".chs"+i).on("click",function(){
                var s = $(this).data("lvs"),carrier= {"vars":s};

            $.ajax({
               url: aScript.php,
               type: "POST",
               data: carrier,
               dataType: "json"
                    success: function(data) { 
                        console.log(data) }
                });
            });
        });

  });

我的 php 文件看起来像这样

<?php
$json = $_POST['carrier'];
$data = json_decode($json);
$d = $data->vars;
echo $d;
?>
<input type="hidden" id="ss" value="<?=$d?>" />

谁能帮我检查一下这个文件,因为我似乎找不到问题请帮我找出这个脚本有什么问题

您应该将文件名括在引号内,因为它是一个字符串变量

$.ajax({
               url: 'aScript.php',
               type: "POST",
               data: carrier,
               dataType: "json",
                    success: function(data) { 
                        console.log(data) }
                });
            });

您的代码存在一些问题

  1. 在这一行 url: aScript.php, 中 url 字符串没有被引用,应该是 url: 'aScript.php',
  2. 你设置 dataType: "json"aScript.php returns html 而不是 json,删除那行
  3. 您传递的数据不是 json,它将被序列化为键=值对,您将能够通过 $d = $_POST['vars'];
  4. 访问它