gpt4 book ai didi

php - ajax获取下拉依赖值

转载 作者:行者123 更新时间:2023-12-01 05:53:34 25 4
gpt4 key购买 nike

我只是 php、jquery 和 ajax 的新手。我想从 国家/地区名称 中获取州和城市名称数据库。我的数据库是这样的

CREATE TABLE IF NOT EXISTS `propertylocator` (
`store_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`store_name` varchar(255) NOT NULL,
`country_name` varchar(255) NOT NULL,
`state_name` varchar(255) NOT NULL,
`city_name` varchar(255) NOT NULL,
`address` varchar(255) NOT NULL,
`description` varchar(255) NOT NULL
PRIMARY KEY (`store_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;


INSERT INTO `propertylocator` (`store_id`, `store_name`, `country_name`, `state_name`, `city_name`, `address`, `description`) VALUES
(1, 'My property1', 'India', 'uttar pradesh', 'Ghaziabad', 'Pilkhuwa, Uttar Pradesh 245304, India', 'this is demo test','this is dummy description'),
(2, 'My new Property', 'India', 'Maharashtra', 'Thane', 'Kudavali, Maharashtra 421401, India', 'test propery again', 'another dummy property'),
(3, 'Dummy store', 'United Arab Emirates', 'Sharjah', 'Halwan Suburb', 'Al Ghubaiba - Sharjah - United Arab Emirates', 'this is another dummy store','another text with dummy');

现在我有 3 个下拉菜单第一个代表国家名称,第二个代表州名称,另一个代表城市名称。在countryname dropdown中,我获取了所有countryname。但我希望当我选择国家名称(这里说印度)时,我会得到州的下拉选项为北方邦和马哈拉施特拉邦,因为它们都有国家名称是印度,当我从国家列表中选择阿拉伯联合酋长国时,我将获得数据库中国家名称为阿拉伯联合酋长国的所有州名称。以同样的方式它将应用于cityname。对于所有这些东西,我已经完成了 jQuery ajax 像这样

<label>Please Select Country</label></td><td>
<div class="country">
<select id="country" name="country" onchange="selectCountry();">
<option value="Select">Select</option>
foreach($countrylist as $country) {
<option value="$country['country_name]" id="$country['country_name]">echo $country['country_name]</option>
}
</select>

在函数selectCountry()中我的代码是这样的

function selectCountry() {
var state = $('#country').val();
console.log(state);
$.ajax({
type: "GET",
url: "selectstate.php",
data: { sta : state }
}).done(function(html) {
$('#state').html(html);
})
}

在 selectstate.php 中我有这样的查询

mysql_connect('localhost','root','') or die(mysql_error());
mysql_select_db(propertylocator) or die(mysql_error());
$sDB = new SelectDb();
$data = $sDB->selectStatesById($_GET['sta']);
foreach($data as $row)
{
echo "<option value=" . $row->state . ">" . $row->name . "</option>";
}

但在这里我没有得到任何结果。显示 404 未找到错误。那么有人可以告诉我这里出了什么问题吗?

如果我的代码中有一些错误,请解决它。这样我才能正确理解代码。谢谢

更新我已经检查了 url 路径并使其更清晰,以便可以跟踪问题。

最佳答案

您可以在此处执行的操作是,当国家/地区下拉列表值更改为 jquery ajax 时进行调用,以获取所选国家/地区的所有州并填充下拉列表并将其添加到您的 html 中。然后按照相同的过程调用所选州的城市。

关于php - ajax获取下拉依赖值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18631570/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com