1、添加省份和城市类

//省份
public class Province
{
public int Id { get; set; } public string Name { get; set; }
} //城市
public class City
{
public int Id { get; set; } public string Name { get;set;} public int ProvinceId { get; set; }
}

2、添加控制器

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using SupermarketManagement.Models; namespace SupermarketManagement.Controllers
{
public class LinkageController : Controller
{ List<Province> provinceList = new List<Province>();
List<City> cityList = new List<City>(); //初始化城市数据
private void InitProvince()
{
provinceList.Add(new Province { Id = , Name = "河北省" });
provinceList.Add(new Province { Id = , Name = "河南省" });
provinceList.Add(new Province { Id = , Name = "广东省" }); cityList.Add(new City { Id = , Name = "石家庄", ProvinceId = });
cityList.Add(new City { Id = , Name = "邢台", ProvinceId = });
cityList.Add(new City { Id = , Name = "保定", ProvinceId = }); cityList.Add(new City { Id = , Name = "郑州", ProvinceId = });
cityList.Add(new City { Id = , Name = "安阳", ProvinceId = });
cityList.Add(new City { Id = , Name = "洛阳", ProvinceId = }); cityList.Add(new City { Id = , Name = "广州", ProvinceId = });
cityList.Add(new City { Id = , Name = "中山", ProvinceId = });
cityList.Add(new City { Id = , Name = "佛山", ProvinceId = });
} //绑定省份
public ActionResult Index()
{
InitProvince();
var pEnumrable = provinceList.Select(p => new SelectListItem { Value = p.Id.ToString(), Text = p.Name });
ViewBag.Province = pEnumrable;
return View();
} //获取城市
public ActionResult ShowCity(int provinceId)
{
InitProvince();
List<City> cList = new List<City>();
cList = cityList.Where(c => c.ProvinceId == provinceId).ToList(); return Json(cList, JsonRequestBehavior.AllowGet);
}
} }

3、添加HTML

<!DOCTYPE html>

<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
<script src="~/Content/jquery-1.8.3.min.js"></script>
<script>
$(function () {
$("#Province").bind("change", function () {
var selectProvince = $(this).val(); //除了第一个都删除
$("#City option:not(:first)").remove();
$.getJSON("@Url.Action("ShowCity","Linkage")", { provinceId: selectProvince }, function (data) { $.each(data, function (i, item) {
$("#City").append("<option value='"+item.Id+"'>"+item.Name+"</option>");
});
});
});
});
</script>
</head>
<body> 省份:@Html.DropDownList("Province", "请选择省份")<br />
城市:<select id="City">
<option value="">请选择城市</option>
</select><br />
</body>
</html>

MVC4 DropDownList (二) — 省市联动的更多相关文章

  1. Django(二十)下拉列表-省市联动实例:jquery的ajax处理前端

    一.知识点 1.jquery的ajax请求写法 <script src="/static/js/jquery-1.12.4.min.js"></script> ...

  2. select省市联动选择城市 asp.net mvc4

    本文在 http://www.cnblogs.com/darrenji/p/3606703.html(感谢博主的分享)基础上加入全国各省市,从文件中读取全国省市县,组成省市联动的选择标签 在Model ...

  3. Json 基于jQuery+JSON的省市联动效果

    helloweba.com 作者:月光光 时间:2012-09-12 21:57 标签: jQuery  JSON  Ajax  省市联动     省市区联动下拉效果在WEB中应用非常广泛,尤其在一些 ...

  4. Dynamic CRM 2013学习笔记(八)过滤查找控件 (类似省市联动)

    我们经常要实现类似省市联动一样的功能,常见的就是二个查找控件,一个选择了省后,另一个市的查找控件就自动过滤了,只显示当前省下的市,而不是所有的市.当然这是最简单的,实际工作中还有更复杂的功能要通过过滤 ...

  5. 省市联动 js

    工作中见到这个省市联动代码,虽然很简单也能写出来,还是随便把它记录下来. //省市联动 function area(obj_id, area_pId, data_call_back) { ) retu ...

  6. html css javascript 知识点总结 bom js 操作标签 文本 节点 表格各行变色 悬停变色 省市联动 正则

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  7. JavaScript基础4——省市联动

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. jquery省市联动,根据公司需求而写

    //author:guan //2015-05-25 //省市联动 //实用说明,页面引用如下js //<script src="../js/jquery-1.6.3.min.js&q ...

  9. 无废话ExtJs 入门教程十二[下拉列表联动:Combobox_Two]

    无废话ExtJs 入门教程十二[下拉列表联动:Combobox_Two] extjs技术交流,欢迎加群(201926085) 不管是几级下拉列表的联动实现本质上都是根据某个下拉列表的变化,去动态加载其 ...

随机推荐

  1. collections.ChainMap类合并字典或映射

    ## 使用update()方法或者ChainMap类合并字典或映射 # 使用update()方法合并 a = {'x': 1, 'z': 3} b = {'y': 2, 'z': 4} merged ...

  2. openWrt libubox组件之uloop原理分析

    1.    libubox概述 libubox是openwrt新版本中的一个基础库,有很多应用是基于libubox开发的,如uhttpd,netifd,ubusd等. libubox主要提供以下两种功 ...

  3. C语言之一般树

    1.一般树 将这种一般的树转化成我们熟悉的单链表形式,这有三层,每一层都可以看成单链表或者多个分散的单链表 数据节点如下: struct tree {        int elem;        ...

  4. ssh_key登录服务器,免密码登录

    最近使用ssh远程登录服务器每次都要输入密码实在是太麻烦了,我这个懒人就想到了查了一下怎么用ssh-key来实现我的梦想. 使用密钥来登录 原理如下: 客户端向服务器发出请求.服务器收到请求之后,先在 ...

  5. Python值集合操作

    list_l1 = [12,1,4,6,9,5,4,2,11] list_l1 = set(list_l1) print(list_l1,type(list_l1)) #集合也是无序的 list_2 ...

  6. Java基础之static关键字的用法

    Java中的static关键字主要用于内存管理.我们可以应用static关键字在变量.方法.块和嵌套类中. static关键字属于类,而不是类的实例.        静态(static)可以是: 变量 ...

  7. asp.net微信公众平台本地调试设置

    1.首先要开启内网穿透功能,我这边使用自己搭建的ngrok内网穿透服务(具体如何搭建ngrok内网穿透服务,另开一篇说) 2.开启内网穿透后,即可实现互联网访问 www.tbkmama.cn 指向 1 ...

  8. Ubuntu 安装 搜狗输入法

    1.去下载搜狗输入法安装包: https://pinyin.sogou.com/linux/ 2.安装 sudo dpkg sougou****.deb 3.去设置 参考:https://blog.c ...

  9. HIS系统两种收费模式比较:前计费和后计费

    一.药品 a.前计费:审核(临时医嘱)或者分解(长期医嘱)计费 退费处理方式,1)如果是还未发药,则护士站直接退费;2)如果药房已经发药,则护士站发出退费申请,由护士拿着药品去药房退药退费. b.后计 ...

  10. java对于Redis中jedis的操作

    package com.answer.redis; import java.util.HashMap; import java.util.List; import java.util.Map; imp ...