簡體   English   中英

使用AJAX將javascript變量的值傳遞給PHP變量不起作用

[英]Passing value of javascript variable to PHP variable using AJAX is not working

我是編程新手。 抱歉,我的代碼很亂。 我想問一下從JS變量到PHP變量的傳遞值。

我有2個檔案。

首先是ajaxvariable4.php ,其中包含HTML和jQuery AJAX。

<!DOCTYPE html>
<html lang="en">
    <head>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

    </head>

    <body>
        <form>
            <select name="target" id="target">
                <option value="Ferrari">Car</option>
                <option value="Wimcycle">Bicycle</option>
            </select>
            <script>
                        $( "#target" ).change(function() {
                        var vehicle=$('#target option:selected').val();

                            $.ajax({
                            type: "POST",
                            data: { 'vehicle': vehicle },
                            url: "passingajax.php",
                            success: function(json) {
                                $("#tb").val(vehicle);
                                }
                            });
                        });
            </script>
            <input type="text" id="tb">
        </form>
    </body>
</html>

第二個是傳遞包含PHP變量以保存JS變量值的ajax.php

 <?php 
if( isset($_POST['vehicle']) )
{
     $vehicle= $_POST['vehicle'];
     echo $vehicle;
}else{
    echo "Data doesn't exist";
}
?>

當我執行ajaxvariable4.php時 ,ajax調用成功,並且id = tb的列填充了在option中選擇的值。 但是當我執行passingajax.php時 ,輸出為“ 數據不存在” 因此,我假設通過ajax.php中的可變媒介沒有從JS變量接收值。

我的問題是ajax調用是否成功,為什么passingajax.php中變量工具沒有從JS變量接收值?

您可以嘗試以下代碼:

$('#target').change(function () { 
    var vehicle = $("#target >option:selected").val(); 
}

形成:

 <select name="target" id="target" onChange="test(this.value)">
            <option value="Ferrari">Car</option>
            <option value="Wimcycle">Bicycle</option>
 </select>

JQuery的:

function test(t){
  console.log(t.value);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM