省市县三级联动效果实现思路.docVIP

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
省市县三级联动效果实现思路.doc

省市县三级联动效果实现思路?这两天被编程的错综复杂的逻辑搞得头都大了,很简单的逻辑却总是被我搞得很复杂。整理一下知识点儿,以备后续之用。因为是编程之初,总结的可能很肤浅,也算是总结吧,有总结就有进步。小小蚂蚁要加油!?????????? 省市县三级联动效果实现思路 该效果特征: ?通过【省份】的改变,获取其下属【城市】,同时根据当前【城市】获取其下属【县区】 ? 数据库设计: ?????????地址表字段:自动编号(id)、地点名称(title)、地点拼音(pinyin)、父编号(pid) ?????????其他存入地址的表中地址的存储方式:地点ID,街道信息? ?????????声明:如果存储地址信息时,只让选择,没有让输入具体的街道信息,那就直接存储“地址ID”即可。 该效果数据绑定的实现(C#): ?????????首先,在页面中放置三个DropDownList,并分别命名为DDL_sheng(省)、DDL_shi(市)、DDL_xian(县)。 ?????????其次,书写三个DropDownList的绑定事件,分别命名为BindSheng()、BindShi()、BindXian()。 ?????????????????????绑定【省份】的条件是[父编号等于零(pid=0)],然后以【省份】的当前选中项(SelectedValue)为条件绑定【城市】。 ?????????最后,以【城市】的当前选中项来绑定【县区】。 ?????????并且,在【省份】的改变事件(SelectedIndexChanged)重新绑定【省市】,即把BindShi()放在该对象的改变事件中。 ?????????同理,在【城市】的改变事件里重新绑定【县区】,即把BindXian()放在该对象的改变事件中。 ? ?????????因为有的【省份】没有下属【城市】或者有些【城市】以及【直辖市】没有下属【县区】,为了美观可在绑定【城市】和【县区】时插入“==请选择==”字样,其实现方法之一:DrpDL_shi.Items.Insert(0, new ListItem("==请选择=="));DrpDL_xian.Items.Insert(0, new ListItem("==请选择==")); ????????因为绑定【县区】是以【城市】的当前选中项来实现的,而当只有【省份】有内容而没有下属【城市】的时候,此时【城市】的当前选中项是“==请选择==”, ?????????因此,绑定【县区】的时候应该先判断【城市】的当前选中项是否是“==请选择==”或者是否为空。 ? ??????????应该特别注意的是,【城市】和【县区】绑定的时候,应该先清除该DropDownList里原有的内容。其实现方法之一:DDL_shi.Items.Clear(); ? ? 根据指定的记录ID中的地址ID来实现三级联动(C#): ????该效果出现在修改信息和发布信息共用一个页面的情况下 ?????????????首先,根据指定的记录ID获取地址ID。 ?????????????其次,根据获取到的地址ID来判断该地址ID是【县区】或者是【城市】或者是【直辖市】 ?????判断方法: ?????????????根据已有地址ID查询其父ID时候为0,如果其父ID为0,那么说明该地址应该是【直辖市】(因为此种数据表设计中存储的地址是最小地址,即延伸到县区,该地址ID的父ID为0,那么该地址就是【直辖市】了) ?????????????如果该地址ID的父ID不为0,那么就要判断该地址ID的父ID的父ID是否为0。 ?????????????因为本例子要说明的是三级联动,所以当该地址ID的父ID的父ID为0的时候,那么该地址ID表示的就是没有下属【县区】的【城市】了,其父ID则表示的是【省份】。 ?????????????当该地址ID的父ID的父ID不为0的时候,那么该地址ID就表示的是【县区】了,其父ID则表示的是【城市】,其父ID的父ID则表示的是【省份】. 本文版权归苑振奇所有【工作QQ:1483572936】

文档评论(0)

molarr + 关注
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档