我有以下JS脚本:

jQuery(document).ready(function($) {
    $("#idSelect").change(function(event) {
        var valor = $(this).val();
        //alert(valor);
        $.post( "ajaxSerie.php", { valorInput: valor }, function( data ) {
            var retorno = JSON.parse(data);
            console.log(retorno);
            $("#pertence").val(retorno['pertence'])// aqui estou atribuindo um input qualquer o valor retornado do php, o input tera o valor de sala206
            $.each(retorno, function() {
                $('<option>').val(retorno['pertence']).text(retorno['pertence']).appendTo('#teste');
            });
        });
    });

}


在AJAX中看起来像这样:

$idValor = $_POST['valorInput'];
 $result = [
"pertence" => $idValor
];
echo json_encode($result);


当我在本地进行操作时,它运行良好,现在,当我进入服务器上的站点时,出现以下错误:


  未捕获到的SyntaxError:JSON中位置0处的意外令牌<


如何解决呢?

最佳答案

您的Ajax调用可能正在返回HTML,该HTML以“
以我的经验,Ajax调用返回HTML表示后端出现了错误。如果使用浏览器的开发人员工具,则可以跟踪Ajax调用并读取其响应。

花时间阅读该HTML,因为在大多数情况下,标记中的错误消息会留下痕迹来查找真正的问题。

10-01 03:28