繁体   English   中英

如何使用ajax将值传递到另一个页面php

[英]How to pass value into another page php using ajax

我试图将使用Ajax输入的选择选项的值传递到另一页PHP中,并获取数据库并将数据提取到选择选项中。 但是,我的问题是第二选择选项没有任何显示。

我有一个名为“ 国家/地区”的选择选项,其中包含国家/地区1,国家2,国家3,国家4,其cid分别为1,2,3,4。

我想要的是将国家(地区)ID(cid)过去到getdata.php中,并查询包含City a,city b,city c等的City数据库,并使用Ajax将city的数据提取到select选项中。

选择国家时,我需要使城市选择选项动态更改。

这是我的数据库结构:

Country.db

在此处输入图片说明

City.db

在此处输入图片说明

这是我的脚本:

dropdown.php

<?php

    require_once "connection.php";
?>

<html>
<head>
    <title>Dropdown ajax</title>
</head>
<body>


<div class="country" >
    <label>Country</label>
    <select name="country" onchange="getId(this.value);">
    <option value=""> -- Select Country -- </option>

    <!-- populate value using php -->

    <?php
        $query = "SELECT * FROM country";
        $result = mysqli_query($con,$query);

        //loop

        foreach ($result as $country) {
        ?>
            <option value="<?php echo $country["cid"]; ?>"> <?php echo $country["country"]; ?> </option>

        <?php 
            } 
        ?>

</select>
</div>
<div class="city">
    <label>City</label>
    <select name="city" id="cityList">

        <option value=""></option>

    </select>
</div>
<script src="jquery-3.2.1.min"></script>
<script type="text/javascript">
    function getId(val){
        // ajax function

        $.ajax({
            type:"POST",
            url:"getdata.php",
            data:"cid="+val,
            success:function(data){
                $(#cityList).html(data);
            }
        });
    }
</script>

</body>
</html>

从下拉列表中,我试图使用ajax将cid粘贴到getdata.php中,并将数据库提取到drop-down.php中的select选项中

访问getdata.php

<?php

require_once "connection.php";

if(!empty($_POST["cid"])){
    $cid = $_POST["cid"];
    $query = "SELECT * FROM city WHERE cid = $cid";
    $result = mysqli_query($con,$query);

    foreach ($result as $city) {

    ?>
    <option value="<?php echo $city["cityId"];?>"><?php echo $city["city"];?></option>

    <?php       
    }
}

?>

这是我的connection.php

<?php
    $con = mysqli_connect("localhost","root","admin","dropdowndb");

    //check connection
    if(mysqli_connect_errno()){
        echo "Failed to connect :".mysqli_connect_errno();
    }
?>

结果是这样的:

在此处输入图片说明

那么如何解决这个问题呢?

ajax成功处理程序中的选择器必须是字符串,而不是标识符:

success:function(data){
  $('#cityList').html(data);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM