mvc关于三级联动修改时数据回显

在网上找了好久,都没有找到自己想要的那种效果,最后还是自己写出来了, 虽然方法有点笨。

这是Controller里

 1 public ActionResult Edit(string id)
 2         {
 3             //查询收货地址信息
 4             var data = AddressDirectoryLogic.GetById(id);
 5
 6             //先把省份查出来装到ViewBag 里
 7             var provinces = RegionLogic.GetChinaProvinces();
 8             List<SelectListItem> pItems = new List<SelectListItem>();
 9             foreach (var p in provinces)//根据列表获取省名称和ID
10             {
11                 pItems.Add(new SelectListItem { Text = p.Name, Value = p.Id });
12             }
13             ViewBag.Province = pItems;
14
15             //城市
16             var city = RegionLogic.GetCities(data.Province);
17             List<SelectListItem> item = new List<SelectListItem>();//获取城市列表
18             foreach (var c in city)//根据列表获取城市名称和ID
19             {
20                 item.Add(new SelectListItem { Text = c.Name, Value = c.Id });
21             }
22             ViewBag.City = item;
23             //把收货地址信息里的省份和城市值保存,好做显示
24             ViewBag.ProvinceId = data.Province;
25             ViewBag.CityId = data.City;
26
27             return View(data);
28         }

js

 1 $(document).ready(function () {
 2             //GetProvince();//加载省份
 3             $(‘#T_Province‘).val(‘@ViewBag.ProvinceId‘);
 4             $(‘#T_City‘).val(‘@ViewBag.CityId‘);
 5             $("#T_Province").change(function () { GetCity() });//加载城市
 6         });
 7         function GetProvince() {
 8             $("#T_Province").empty();//清空省份SELECT控件
 9             $.getJSON("/AddressDirectory/GetProvincelist", function (data) {
10                 $.each(data, function (i, item) {
11                     $("<option></option>").val(item["Id"]).text(item["Name"]).appendTo($("#T_Province"));
12                 });
13                 GetCity();
14             });
15         }
16         function GetCity() {
17             $("#T_City").empty();//清空城市SELECT控件
18             $.getJSON("/AddressDirectory/GetCitylist", { pid: $("#T_Province").val() },
19             function (data) {
20                 $.each(data, function (i, item) {
21                     $("<option></option>").val(item["Value"]).text(item["Text"]).appendTo($("#T_City"));
22                 });
23             });
24         }

html

 @Html.DropDownListFor(model=>model.Province, (List<SelectListItem>)ViewBag.Province,new {@class= "combobox", id = "T_Province" })

 @Html.DropDownListFor(model => model.City,(List<SelectListItem>)ViewBag.City,new {@class= "combobox" , id = "T_City" })

上面的部分js 是参照别人的。下面是部分js 的源码;

源码:http://blog.csdn.net/qq_17202783/article/details/43371421

时间: 2024-08-09 14:40:55

mvc关于三级联动修改时数据回显的相关文章

&lt;select&gt;多选时的数据回显

<select>标签有个属性为multiple,当设置multiple="true"时,在页面上可以按住ctrl键进行多选,在Action中可以给一个string类型的数组来获取前台的值,例子如下: 在action中给出set/get方法即可.然后根据数据库中的字段,添加到对象中即可. 但是在数据修改的时候,从数据库中查找到的是一个用逗号分隔的字符串,因此在回显之前需要做一些处理. s1是后台返回到前台的json对象,通过逗号将数据库查到的字符串拆分一下,然后拿到<s

Jquery三级联动(需要JSON数据)

Category.js $(function () { BindCategory(); }) function BindCategory() { var $txtCategory = $("#txtCategoryId"); var _selectId = ["selBigClass", "selSmallClass", "selThreeClass"]; for (var i = 0; i < _selectId.le

三级联动,json数据、可设置默认城市

闲来无事,折腾个三级联动,json数据.可设置默认城市.可配置是否显示第三级select <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>省市县三级联动</title> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script&g

SpringMVC【参数绑定、数据回显、文件上传】

前言 本文主要讲解的知识点如下: 参数绑定 数据回显 文件上传 参数绑定 我们在Controller使用方法参数接收值,就是把web端的值给接收到Controller中处理,这个过程就叫做参数绑定... 默认支持的参数类型 从上面的用法我们可以发现,我们可以使用request对象.Model对象等等,其实是不是可以随便把参数写上去都行???其实并不是的... Controller方法默认支持的参数类型有4个,这4个足以支撑我们的日常开发了 HttpServletRequest HttpServl

Struts2实现input数据回显

/** 修改页面 */    public String editUI() {        //准备回显得数据        Role role = roleService.getById(id);                ActionContext.getContext().getValueStack().push(role); //下面的方法也能实现数据回显 //        this.name = role.getName();//        this.description

7、struts2 案例( 模型驱动、 防止表单重复提交--拦截器 、数据回显 、值栈 、 OGNL表达式综合运用)

struts2 案例 技术点: 模型驱动 防止表单重复提交–拦截器 数据回显 值栈 OGNL表达式 通配符.路径匹配原则.常量 数据处理的集中方式 请求数据自动封装以及类型转换 1.导包 c3p0-0.9.1.2.jar commons-dbutils-1.6.jar commons-fileupload-1.2.2.jar commons-io-2.0.1.jar commons-lang3-3.1.jar freemarker-2.3.19.jar javassist-3.11.0.GA.j

Ztree菜单树数据回显

Ztree菜单树数据回显,分两部分查询数据: 其一: 根据实体id查询出其关联的菜单数据 其二: 查询所有的菜单数据. 然后,使用Ztree API中进行菜单数据回显的数据进行回显数据,勾选菜单复选框. 代码 1 //2.设置菜单树的全局变量 2 var setting = { 3 data : { 4 key : { 5 title : "t" 6 }, 7 simpleData : { //开启简单数据 8 enable : true, 9 } 10 }, 11 check : {

springMVC参数绑定与数据回显

简单例子:修改商品信息的jsp页面: 参数绑定过程: 1.2.1  默认支持的参数类型 处理器形参中添加如下类型的参数处理适配器会默认识别并进行赋值. 1.1.1     HttpServletRequest 通过request对象获取请求信息 1.1.2     HttpServletResponse 通过response处理响应信息 1.1.3     HttpSession 通过session对象得到session中存放的对象 1.1.4     Model 通过model向页面传递数据,

&lt;radio&gt;数据回显

在做练习的时候遇到这样一组<radio> 添加保存数据的时候是JUST  SO  EASY,BUT在修改数据回显的时候,因为返回的对象是JSON,获取到radio的value值之后怎么也不能让页面正常显示选择的数据, 上网查了一种方法,把我的问题解决了,现在分享给大家,希望能帮到更多的人.方法如下: 其中ss是后台返回的JSON对象. 不知道大家有没有更好的办法,欢迎回复.