为什么这个 ajax 脚本不发送数据



我正在尝试将一个js变量发送到一个php文件,以创建一个查询。这是我的剧本,但不起作用,你能帮我吗?

<select class="form-control" id="Input_Cli" name="Input_Cli" onchange="sendtophp()">
    <option disabled selected value> Seleziona il cliente</option>
    <?php
       $results = pg_query($conn, "SELECT piva, nome FROM cliente");
       while($row = pg_fetch_array($results)) { ?>
            <option value="<?php echo $row['piva']?>"><?php echo $row['nome']?></option>
    <?php
       }
    ?>
</select>
<script type="text/javascript">
function sendtophp()  { 
    var cli = document.getElementById("Input_Cli").value;
    document.getElementById("prova").innerHTML = cli;
    $.ajax({
        url: "C:xampphtdocsProgettogetlist.php"
        type: "GET"
        data: {Cli : cli}
        success: function( )
        {
            alert("success!");
        }
    });
} 
</script>

我刚刚测试了这个,你的脚本运行得很好。PHP输出选项时一定有错误,或者您只是调用了错误的url,我们无法检查。

如果我更改了selectbox,那么下面的代码段和您的PHP(test.PHP位于与html文件相同的目录中(在一个有效的服务器上会返回1。

请确保您实际上是在浏览器中打开Web服务器上的页面,而不是本地文件。

出于这个片段的目的,我将url更改为我们可以在这里实际验证的内容。

function sendtophp() {
  var cli = document.getElementById("Input_Cli").value;
  $.ajax({
    url: "https://jsonplaceholder.typicode.com/posts/1",
    type: "GET",
    data: {
      Cli: cli
    },
    success: function(data) {
      console.log(data);
    }
  });
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select class="form-control" id="Input_Cli" name="Input_Cli" onchange="sendtophp()">
  <option disabled selected value> Seleziona il cliente </option>
  <option>some option</option>
</select>

最新更新