jquery请求的JSON解析在解析$get参数时失败


jquery Requested JSON parse failed when parsing $get argument

Jquery在以下行更改之前已经工作

data: "ID=1",
$ID=$_GET["ID"]
$array=array("$ID",'B',"C");

来自

data: "",
$array=array('A','B',"C");

我的ajax文件

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
    <button class="ajax_action">click</button>
    <script>
    $('button.ajax_action').on('click', function (e) {
        e.preventDefault();
        var target = $(this);
        $.ajax({
            url: "test.php",
            data: "ID=1",
            type: 'POST', 
            dataType: 'json',
            success: function (data) {
                var name=data[0];
                target.html(name);
                target.attr('disabled', 'disabled')
            },
               error: function(jqXHR, exception) {
                if (jqXHR.status === 0) {
                    alert('Not connect.'n Verify Network.');
                } else if (jqXHR.status == 404) {
                    alert('Requested page not found. [404]');
                } else if (jqXHR.status == 500) {
                    alert('Internal Server Error [500].');
                } else if (exception === 'parsererror') {
                    alert('Requested JSON parse failed.');
                } else if (exception === 'timeout') {
                    alert('Time out error.');
                } else if (exception === 'abort') {
                    alert('Ajax request aborted.');
                } else {
                    alert('Uncaught Error.'n' + jqXHR.responseText);
                }
            }
        });
    });
    </script>

php文件test.php(与ajax文件相同的目录)

<?php
    $ID=$_GET["ID"]
    $array=array("$ID",'B',"C");
    echo json_encode($array);
    ?>

如何使用$_GET["ID"]进行操作,我需要根据ID进行操作,ID根据用户选择的产品而变化


我已经通读了手册,但手册对一个新来的人来说并不容易。"你应该读手册,白痴"是我听过的最糟糕的答案,我可以用这句话回答我不知道的每一个问题@tereško

进一步更改为后续线路,但仍然不起作用,

    data: {'ID':1},
    type: 'POST', 
<?php
$ID=$_POST["ID"]
$array=array("$ID",'B',"C");
echo json_encode($array);
?>

您使用的是POST而不是GET。在test.php上,您需要将php代码更改为

<?php
 $ID=$_POST["ID"];
 $array=array("$ID",'B',"C");
 echo json_encode($array);
 ?>

将ajax调用中的类型更改为type: 'GET'