Asp.net MVC4 下二级联动

效果图:

主要文件有Index.cshtml ,ErJLDController.cs ,还有数据库文件 。

1、首先在数据库中创建省级、城市的表,我的表如下:我用了一张表放下了省级、城市的数据,用level划分省份和城市,parentId表示该城市所在省份的id

 1 namespace Mvcproject.Controllers
 2 {
 3     //二级联动
 4     public class ErJLDController : Controller
 5     {
 6
 7         ZjbEntities db = new ZjbEntities();
 8         //
 9         // GET: /Test/
10
11         public ActionResult Index()
12         {
13             //pro_city province=new pro_city();
14
15             return View();
16         }
17
18         public JsonResult getProvince() {
19
20             List<pro_city> provinceList = (from p in db.pro_city where p.level == 1 select p).ToList();
21
22
23             JsonResult Jprovince = new JsonResult();
24             Jprovince.Data = provinceList;
25             Jprovince.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
26             return Jprovince;
27
28         }
29
30         public JsonResult getCity(string pName)
31         {
32
33             //string pid = (from p in db.pro_city where p.areaValue == pName select p.id).ToString();
34             //int id = int.Parse(pid);
35             int id = int.Parse(pName);
36
37             List<pro_city> cityList = (from p in db.pro_city where p.parentId == id select p).ToList();
38
39             JsonResult Jcity = new JsonResult();
40             Jcity.Data = cityList;
41             Jcity.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
42             return Jcity;
43
44         }
45
46     }
47 }

ErJLDController.cs

 1 <body>
 2     <div>
 3         <select id="provinceId" >
 4          <option> 请选择省份</option>
 5         </select>
 6         <select id="cityId">
 7             <option>请选择市区</option>
 8         </select>
 9     </div>
10
11     <script type="text/javascript">
12
13
14
15         //用json从数据库里取一级列表的参数
16         $(function () {
17
18             $.getJSON("ErJLD/getProvince/", function (obj) {
19                 $.each(obj, function (i, p) {
20                     $("#provinceId").append("<option value=‘"+p.id+"‘>" + p.areaValue + "</option>");
21                 });
22
23                 $("#provinceId").change(function () {
24                     //用attr()方法获取当前选择的option的value值(即p.id ,数据库里的id值,
25                     //虽然在TestController中的getCity方法中传入的是string类型的形参,但是后来需要变换成int类型, 所以value值应该为数字)
26                     var pName = $("#provinceId").attr("value");
27                     $.getJSON("ErJLD/getCity?pName=" + pName, getcity);
28                 });
29             });
30         });
31
32
33
34
35         function getcity(obj) {
36             $("#cityId").empty();
37                         $.each(obj, function (m, v) {
38                             $("#cityId").append("<option >" + v.areaValue + "</option>");
39                         });
40
41                     };
42
43
44
45
46     </script>
47 </body>

Index.cshtml

Asp.net MVC4 下二级联动

时间: 2024-12-29 07:48:03

Asp.net MVC4 下二级联动的相关文章

asp.net MVC4——省市三级联动数据库

数据库设计 sql语句: INSERT INTO sy_area VALUES('110000','0','北京市','','110000',0); INSERT INTO sy_area VALUES('110100','110000','东城区','','110100',0); INSERT INTO sy_area VALUES('110200','110000','西城区','','110200',0); INSERT INTO sy_area VALUES('110500','1100

在ASP.NET MVC下实现单个图片上传, 客户端服务端双重限制图片大小和格式, 服务端裁剪图片

在"MVC文件图片ajax上传轻量级解决方案,使用客户端JSAjaxFileUploader插件01-单文件上传"一文中,使用JSAjaxFileUploader这款插件实现了单文件上传,在chrome, firefox下运行良好,但在某些版本的IE浏览器(比如IE8,IE9)下却无法正常运行,这可能是因为JSAjaxFileUploader插件在编写时没有考虑到某些低版本IE浏览器导致的.本篇,就在ASP.NET MVC4下实现单个图片上传,具体功能包括: 1.在客户端选择图片,并限

Asp.Net下,基于Jquery的Ajax二级联动

最近做一个项目,要求实现二级联动效果.背景为:通过学院的选择,联动出专业选项.起初想直接用微软的控件实现Ajax效果,但是DropDownList控件会自动触发PostBack,在后台根本就不好控制,所以抛弃这种方案,用Jquery实现Ajax效果.直接上代码,简单直观. 1.前端页面(这里给出页面二级联动示意,分别为两个select) <select name="xsxy" id="xsxy"> <option>-- 请选择学院名称 --&

(实用篇)jQuery+PHP+MySQL实现二级联动下拉菜单

二级联动下拉菜单选择应用在在很多地方,比如说省市下拉联动,商品大小类下拉选择联动.本文将通过实例讲解使用jQuery+PHP+MySQL来实现大小分类二级下拉联动效果. 先看下效果 大类:  前端技术   程序开发   数据库   小类: 实现的效果就是当选择大类时,小类下拉框里的选项内容也随着改变.实现原理:根据大类的值,通过jQuery把值传给后台PHP处理,PHP通过查询MySQl数据库,得到相应的小类,并返回JSON数据给前端处理. XHTML 首先我们要建立两个下拉选择框,第一个是大类

ASP.NET Web API实践系列02,在MVC4下的一个实例, 包含EF Code First,依赖注入, Bootstrap等

本篇体验在MVC4下,实现一个对Book信息的管理,包括增删查等,用到了EF Code First, 使用Unity进行依赖注入,前端使用Bootstrap美化.先上最终效果: →创建一个MVC4项目,选择Web API模版. →在Models文件夹创建一个Book.cs类. namespace MyMvcAndWebApi.Models { public class Book { public int Id { get; set; } public string Name { get; set

ASP.NET MVC4 捆绑(Bundle)技术下的 JavaScript

说到 Web 应用中 JavaScript 的模块化,很容易想到 RequireJS.SeaJS 和 ECMAScript 6.ES6 要全面应用还得有段时间,RequireJS 和 SeaJS 的模块化在实际应用中又有两个分支:一是通过按需加载的方式加载并创建模块,二是通过工具打包成单一文件,一次性加载,按需创建模块.ASP.NET MVC4 的捆绑(Bundle)技术类似后者. MVC4 Bundle 主要用于优化 JavaScript 和 CSS 资源的加载.关于这个技术的介绍,可以参考<

学习aiax(javascript)--省份-城市二级下拉联动(POST方式)

1.jsp代码 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"

struts2+spring+hibernate+dwr3实现下拉框二级联动

三大框架如何整合我这就不说了,csdn里很多大神都有详细整合博客. 因为是用spring管理了struts2和hibernate,所以我们只要把spring与dwr整合就行了. 首先我们需要dwr.jar我用的是最新的dwr3,之前测试过dwr2也是成功的. 先把我们的dwr.jar放到工程的lib目录下,再在web.xml的同等级目录下新建一个dwr.xml. 这是我的dwr.xml配置 <?xml version="1.0" encoding="UTF-8"

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

本文在 http://www.cnblogs.com/darrenji/p/3606703.html(感谢博主的分享)基础上加入全国各省市,从文件中读取全国省市县,组成省市联动的选择标签 在Model里定义Province 和 City ? 1 2 3 4 5 6 7 8 9 10 11 12 13 public class Province {     public int ID { get; set; }     public string Name { get; set; } } publ