js中的二级联动,当从数据库中得到一级数据后,怎样让他触发得到二级数据?

flash_eye 2010-04-19 01:54:11
我在网上查了一个城市的js二级联动代码,现在可以正常使用,但是如果从数据库读出省份和城市后,如果使二级联动菜单的值对应上?

aspx代码
<script language="JavaScript" type="text/javascript">
//定义了城市的二维数组,里面的顺序跟省份的顺序是相同的。通过selectedIndex获得省份的下标值来得到相应的城市数组
var city=[
["北京","天津","上海","重庆"],
["南京","苏州","南通","常州"],
["福州","福安","龙岩","南平"],
["广州","潮阳","潮州","澄海"],
["兰州","白银","定西","敦煌"]
];

function getCity(){
//获得省份下拉框的对象
var sltProvince=document.form1.province;
//获得城市下拉框的对象
var sltCity=document.form1.city;

//得到对应省份的城市数组
var provinceCity=city[sltProvince.selectedIndex - 1];

//清空城市下拉框,仅留提示选项
sltCity.length=1;

//将城市数组中的值填充到城市下拉框中
for(var i=0;i<provinceCity.length;i++){
sltCity[i+1]=new Option(provinceCity[i],provinceCity[i]);
}
}
</script>


<form id="form1" runat="server">
<OPTION VALUE="0" selected>请选择省份
</OPTION>
<OPTION VALUE="直辖市">直辖市
</OPTION>
<OPTION VALUE="江苏省">江苏省
</OPTION>
<OPTION VALUE="福建省">福建省
</OPTION>
<OPTION VALUE="广东省">广东省
</OPTION>
<OPTION VALUE="甘肃省">甘肃省
</OPTION>
</SELECT>
<SELECT NAME="city" id="city" runat="server">
<OPTION VALUE="请选择城市" selected>请选择城市
</OPTION>
</SELECT>
</form>


C#代码
this.province.Value = reader["job_local"].ToString();
this.city.Value = reader["job_area"].ToString();

现在的问题是province可以对应数据库的内容,但是city总是显示"请选择城市",该怎样解决?
...全文
574 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wenwenlou 2010-05-07
  • 打赏
  • 举报
回复
要指向某一个城市,就要获取该城市的id号,然后在对应省份的所有城市(即你的city下拉框)中循环遍历,有相同id的就让该项checked
flash_eye 2010-04-19
  • 打赏
  • 举报
回复
我在c#中用了 Page.RegisterStartupScript("ggg", "<script>getCity();</script>");
现在city下拉单里能显示省所有对应的城市,但是还是不能指向某一个城市,"请选择城市"总被checked.
应该怎样解决?
wenwenlou 2010-04-19
  • 打赏
  • 举报
回复
你的select控件时服务器控件,触发事件后页面回传重新加载,你的js所作的工作不会显示,要么用ajax读取数据库数据,要么就直接用后台代码写,不用js控制联动

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧