如何使用 jQuery 在 PHP 中制作级联下拉列表

2023-12-30

我有包含国家和城市的数据库。

第一个案例 - 成功完成:

  1. 页面加载时,国家/地区列表将填充在下拉框中
  2. 页面加载时,城市列表将填充在下拉框中 - 填充的城市列表 基于默认国家/地区。

第二种情况 - 无法成功:

  1. 用户更改国家/地区
  2. 城市列表将根据所选国家/地区而变化

我知道我必须使用 jQuery/Ajax。我尝试过,但由于缺乏编程经验,我无法解决我的问题。我的列表是从数据库而不是 XML 中获取的。我只需要一个快速的解决方案,我需要保持简单和愚蠢。

我使用的是常规 PHP 编码风格,而不是面向对象的。

我该怎么做?任何相关资源将不胜感激。


$("#country").change(function(){
    $('#city').find('option').remove().end(); //clear the city ddl
    var country = $(this).find("option:selected").text();
    alert(country);
    //do the ajax call
    $.ajax({
        url:'getCity.php'
        type:'GET',
        data:{city:country},
        dataType:'json',
        cache:false,
        success:function(data){

        data=JSON.parse(data); //no need if dataType is set to json
         var ddl = document.getElementById('city');                      

         for(var c=0;c<obj.length;c++)
              {              
               var option = document.createElement('option');
               option.value = obj[c];
               option.text  = obj[c];                           
               ddl.appendChild(option);
              }


    },
        error:function(jxhr){
        alert(jxhr.responseText);

    }
    }); 

});

在你的 getCity.php 中

$country = $_GET['city'];

//do the db query here

$query  = "your query";
$result = mysql_query($query);
$temp = array();
while ($row = mysql_fetch_assoc($result)) {

 if(empty($temp))
 {
   $temp=array($row['city']);
 }
 else
 {  
   array_push($temp,$row['city']);
 }

}
echo (json_encode($temp));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 jQuery 在 PHP 中制作级联下拉列表 的相关文章

  • Facebook iFrame 应用程序 - 摆脱垂直滚动条?

    我已经转换了一个 Facebook 应用程序 http apps facebook com video preferans 从 FBML 到 iFrame 使用 PHP SDK 现在显示的垂直滚动条与我之前显示的内容数量相同 一个徽标 一个
  • PHP 的脚手架 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 PHP 中有什么东西可以像 Rails 一样创建基本的脚手架吗 编辑 我需要一些东西来快速原型化 一些框架比如Symfony http www sym
  • 检查字符串是否是哈希值

    我正在使用 SHA 512 来散列我的密码 当然还有盐 我认为我想要的不可能 但无论如何我们还是要问一下 有没有办法检查字符串是否已经是 SHA 512 或其他算法 哈希值 当用户登录时 我想检查他的密码 如果它仍然是纯文本 则应将其转换为
  • Cakedc.users => 总是重定向到主页

    我在新的 Cakephp 安装上使用插件 CakeDC Users 我有两个控制器 PagesController php CardsController php Pages 有 1 个操作 Beta 它是主页 Cards 有两个操作 索引
  • PHP DOM - 剥离 span 标签,保留其内容

    我希望采用如下标记 span class test Some text that is strong bolded strong and contains a a href link a span 并在 PHP 中找到剥离跨度的最佳方法 剩
  • 如何在bootstrap中默认隐藏侧边栏?

    我在这里有一个很好的参考 作为 Bootstrap 在设计 Web 表单应用程序时的侧边栏 http startbootstrap com template overviews simple sidebar http startbootst
  • 实现悬停信息框

    我有一个日历 当用户将鼠标悬停在单元格上时 会出现一个很大的信息框 其中包含该日期的详细信息 虽然当用户离开时使信息框消失 但我遇到了一些麻烦 我基本上想要它 这样当鼠标光标移出信息框隐藏的日历单元格时 它就会消失 但我遇到了麻烦 因为mo
  • jQuery 中的 $('') 与 $('')

    我看到人们以两种不同的方式在 jQuery 中创建 HTML 元素
  • Laravel 登录后重定向回来

    登录后如何重定向返回页面 在 Laravel 5 2 中 认证控制器 protected redirectTo 重定向用户
  • PHP 脚本不断执行 mmap/munmap

    我的 PHP 脚本包含一个循环 它只不过是回显和取消引用指针 如 tab othertab i gt 中的内容 直到昨天 这个脚本开始变得非常慢 比以前慢了 50 倍 之前 它一直运行良好 使用 strace 后 我发现 90 的情况下 脚
  • Paypal 将钱从一个帐户转移到另一个帐户

    我知道这个建议如何汇款至任何 PayPal 账户 https stackoverflow com questions 1559808 paypal api send money to any paypal account但到目前为止我所尝试
  • 发送 POST 请求时 JSON 原语无效

    我有以下 ajax 请求 其中我尝试将 JSON 对象发送到服务器 function sendData subscriptionJson ajax type POST url Url Action SubscribeSecurities S
  • PHP switch case 在 case 中存在多个值

    我有一个变量保存值 每周 每月 季度 和 年度 还有另一个变量保存值从 1 到 10 switch var2 case 1 var3 Weekly break case 2 var3 Weekly break case 3 var3 Mon
  • PHP 共享标头而不使用服务器端脚本?

    到目前为止我总是通过 PHP 解决简单的问题 您有一个包含页眉 菜单 页脚和内容字段的网站 每个页面的页眉 菜单和页脚通常是相同的 在没有 PHP 或任何其他服务器端语言的情况下 如何使页眉 菜单和页脚数据仅存在于一个文件中 例如 您不会有
  • ASP.net Gridview 分页在 UpdatePanel 中不起作用

    虽然类似的问题已经被问过很多次了 但问题仍然没有解决 这是问题 我有一个GridView它包含在选项卡容器中AJAX控件本身位于UpdatePanel Gridview工作得很好并且其相应的方法被准确地触发 但是当我启用paging 例如
  • jQuery:单击外部元素以“关闭”使用toggleClass 出现的菜单

    我已经构建了一些导航 针对移动网络 它使用 jQuery 中的toggleClass 方法来隐藏和显示菜单 单击 MENU 图标 按钮可在菜单 div 上打开和关闭类 active 显示 隐藏 我一直在拼命寻找一种通过单击菜单外部 页面上的
  • 弹出窗口的动态高度取决于内容,可能吗?

    是否有可能获得一个宽度始终为 400px 的弹出窗口 但根据弹出窗口中的内容动态高度 我已经看到了这个 但不知道如何将其应用到弹出窗口 调整 iframe 的宽度高度以适应其中的内容 https stackoverflow com ques
  • 使用 ImageMagick (PHP) 将 2 个图像并排合并为 1 个图像

    我认为这是一件容易的事 我有 2 张图片 JPG 我希望它们合并成一张图片 其中 2 张图片并排 所以我有图片 A 和图片 B 我想要图片 AB 并排 两个图像具有相同的宽度和高度 在本例中 宽度 200px 高度 300px 但是第二个图
  • 搜索多维数组 JavaScript

    我有一个如下所示的数组 selected products 0 r1 7up 61 Albertsons selected products 1 r3 Arrowhead 78 Arrowhead selected products 2 r
  • Readfile 从大文件中读取 0 字节?

    我正在尝试通过以下方式发送一个大文件readfile 但是 没有任何内容发送到浏览器 并且readfile 回报0 not false 我尝试发送的文件大小为 4GiB 并且可由 PHP 读取 我正在设置set time limit 0 以

随机推荐

  • uitableviewcell 的数据在滚动时相互重叠

    我有一个包含四个部分的表格视图 所有部分都有两个文本字段和一个位于不同行的标签 我添加了一些文本作为文本字段的占位符 最初 数据看起来很好 但是当我滚动表格视图时 单元格开始出现重叠的数据 My Code UITableViewCell t
  • 我如何检查是否已收到 Playwright 的回复?

    使用 Java 我试图等待对我正在等待的 Javascript 脚本之一的响应 我已经发现我可以使用等待响应 https playwright dev java docs api class page page wait for respo
  • React.js 中的 setState 与 refs

    我在反应中创建了选项卡 现在单击我必须更改选项卡的类 选项卡类可能如下 1 active2 上一个活动3 已选择 单击选项卡类后将变为active并在使用前检查是否已选择alreadySelected类和active最后一个活动选项卡中的类
  • 如何将多个 PNG 合并为一个大 PNG 文件?

    我有大约 6000 个 PNG 文件 256 256 像素 并希望将它们组合成一个大 PNG 以编程方式保存所有这些文件 最好 最快的方法是什么 目的是在纸上打印 因此使用某些网络技术不是一种选择 拥有一个单一的图片文件将消除许多使用错误
  • Go 中的 exec.Command() 与环境变量

    我想在 Go 中运行以下代码 out err exec Command echo PATH Output 结果是 PATH 而不是 PATH bin 的预期值 为什么 我怎样才能得到期望值 shell 没有解释您的命令 这就是预期的变量替换
  • {} + "" 与 "" + {} - 加法的一致性 [重复]

    这个问题在这里已经有答案了 前几天我在 Reddit 上偶然发现了这个 海报指出 等于0 而类似的 等于一个空 object Object 正常的数学规则告诉我这很奇怪 但为什么会这样呢 代币 语句的开头可能意味着对象文字的开始 也可能意味
  • 检索 Z3Py 中的值会产生意外结果

    我想找到一个表达式的最大间隔e对所有人来说都是如此x 编写这样的公式的方法应该是 Exists d ForAll x in d d e and ForAll x not in d d e 为了得到这样一个d 公式f在 Z3 中 看上面的 可
  • 从预先输入选择更新模型

    考虑我的正文中的以下内容html file div class container fluid div
  • Data::Dumper 中是否有相当于 Perls 的 Dumper() 方法的 C 语言?

    本质上 我正在寻找的是一个可以让我做这样的事情的函数 转储器 some obj 输出 some objs 的数据结构 Thanks C 不支持任何类型的开箱即用的反射 此外 它不是硬类型 因为一旦将其编译为机器代码 类型就不再存在 与某些高
  • ngrx - 有条件地停止/删除效果/操作

    我目前正在使用 Ionic2 和 ngrx 构建一个应用程序 如果没有网络连接 我会尝试停止某些操作 通过停止 我的意思是以某种方式使它们对其他效果和商店不可见 或阻止它们进一步 传播 有没有办法做这样的事情 Effect checkNet
  • Flutter、原生 Admob、广告加载失败:0

    https pub dev packages google mobile ads https pub dev packages google mobile ads 我复制了这个例子 除了 原生广告 之外 一切正常 当然 MainActivi
  • 如何从 CMSampleBufferRef 获取字节并通过网络发送

    Am 使用 AVFoundation 框架捕获视频 在 Apple 文档的帮助下http developer apple com library ios documentation AudioVideo Conceptual AVFound
  • cocos2d中如何填充纹理?

    我有一个形状和纹理图像 shape png texture png 我想在cocos2d 中将形状绘制为texture png 图案 形状尺寸比纹理图像大得多 因此自动填充整个形状的纹理图案 我试图认识路 找不到 有人有办法解决这个问题吗
  • “不变违规:requireNativeComponent:在 UIManager 中找不到“RNSScreen”。” React Native cli 出错

    我不断收到 RNSScreen 错误 我已遵循反应导航指南上的所有说明 但没有任何效果对我有用 看起来本机包不会自动链接 所以试试这个 Note 你的情况可以是 代替 因为我正在使用 Monorepo Podfile pod RNScree
  • 动态调整 ggplot2 图例的大小以适应 Quarto 中的文档类型

    我正在使用 R 生成包含图形和表格的四开本文档 应渲染此文档以创建 HTML 和 PDF 文件 大部分都工作得很好 然而 我有很多图例的人物 并且在生成情节时 一些图例被切到了侧面 我找到了调整图例大小的解决方案 以便所有图例都适合使用以下
  • 用于 Node.js 插件开发的 CMake 或 gyp

    在大多数教程中 他们使用 gyp 作为 C Node js 附加开发的构建系统 然而 与 gyp 相比 CMake 历史悠久 文档也多得多 因此 我的问题是 哪一个更适合 Node js C 插件开发 谢谢 我今天刚刚发布了我的新模块 CM
  • Android 通过低功耗蓝牙接收的信息包处理速度慢的原因是什么?

    任务是将信息从具有 BLE 4 0 的芯片高速 至少 24 kbps 传输到 Android 设备 蓝牙规范允许这样做 我们使用了两种方法 写 读 我们将请求写入一个特征 从另一个特征中读取答案 和通知 芯片以 50 ms 的频率不断发送数
  • Test::Unit Rails - 如何断言一个数字大于另一个数字?

    我正在使用 Test Unit 编写我的第一个单元测试 并且我已经达到了需要比较两个数字的地步 令我惊讶的是 我发现以下内容都不是可用的 http topfunky com clients rails ruby and rails asse
  • “崩溃发生在 Java 虚拟机之外的本机代码中。”如何解决此错误(Java)?

    使用此链接中的库http www blog kslemb com doku php en projects globx java hid http www blog kslemb com doku php en projects globx
  • 如何使用 jQuery 在 PHP 中制作级联下拉列表

    我有包含国家和城市的数据库 第一个案例 成功完成 页面加载时 国家 地区列表将填充在下拉框中 页面加载时 城市列表将填充在下拉框中 填充的城市列表 基于默认国家 地区 第二种情况 无法成功 用户更改国家 地区 城市列表将根据所选国家 地区而