asp.net mvc 两级分类联动方法示例
前台视图代码
<%:Html.DropDownList("AwardClassMainID","请选择")%>
<%:Html.DropDownList("SubID",new List<SelectListItem> { (new SelectListItem(){Text="请选择",Value="0"})})%>
//jquery代码
$("#AwardClassMainID").change(function () {
var url ="../AwardSubClasic/GetClasicList/"; //规则是控制器/方法/参数
$.getJSON(url, { firstclassid:$("#AwardClassMainID").val() }, function (data) {
$('#SubID').html('');
$('#SubID').append("<optionvalue=0>请选择</option>")
$.each(data, function (i,item) {
$('#SubID').append($("<option></option>").val(item.SecondClassID).html(item.ClassName));
});
});
});
后台Controller里代码
//view里面加一级分类的数据
ViewBag.AwardClassMainID = new SelectList(bll.GetAll(),"ClassID", "ClassName");
<summary>
/// json返回数据-通过分类ID,查询此分类的二级分类
/// </summary>
/// <param name="id">一级分类ID</param>
/// <returns></returns>
[HttpGet]
public JsonResult GetClasicList(string firstclassid)
{
List< TrainingSecondClass > Classlist = m_BLL.GetClassDropDwonList(firstclassid);
return Json(Classlist.ToList<AwardSubClasic>(),JsonRequestBehavior.AllowGet);
}
IBLL里面加接口声明
List<TrainingSecondClass>GetClassDropDwonList(string id);
BLL里面
public List<TrainingSecondClass> GetClassDropDwonList(stringid)
{
return repository.GetClassDropDwonList(db,id).ToList<TrainingSecondClass>();
}
repository里面加实现方法
public List<TrainingSecondClass>GetClassDropDwonList(SysEntities db, string FirstClassID)
{
List<TrainingSecondClass> result =new List<TrainingSecondClass>();
var n = db.TrainingSecondClass.Where(p => p.FirstClassID ==FirstClassID).ToList();
foreach (var c in n)
{
result.Add(new TrainingSecondClass
{//取出json调用的数据
SecondClassID =c.SecondClassID,
ClassName = c.ClassName
});
}
return result;
}
asp.net mvc 两级分类联动方法示例的更多相关文章
- ASP.NET MVC 应用提速的十种方法
[编者按]本文作者为 DZone 社区的最具价值博主(MVB) Jonathan Danylko,主要介绍为 ASP.NET MVC 应用提速的十种方法.由国内 ITOM 管理平台 OneAPM 编译 ...
- ASP.NET MVC学前篇之扩展方法、链式编程
ASP.NET MVC学前篇之扩展方法.链式编程 前言 目的没有别的,就是介绍几点在ASP.NETMVC 用到C#语言特性,还有一些其他琐碎的知识点,强行的划分一个范围的话,只能说都跟MVC有关,有的 ...
- ASP.NET MVC ETag & Cache等优化方法
背景 最近有一个项目是用SmartAdmin + Jquery + EasyUI 一个ASP.NET MVC5的项目,一直存在一个性能问题,加载速度比较慢,第一次加载需要(在没有cache的情况下)需 ...
- 实现外卖选餐时两级 tableView 联动效果
最近实现了下饿了么中选餐时两级tableView联动效果,先上效果图,大家感受一下: 下面说下具体实现步骤: 首先分解一下,实现这个需求主要是两点,一是点击左边tableView,同时滚动右边tabl ...
- 在Asp.Net MVC中用Ajax回调后台方法
在Asp.Net MVC中用Ajax回调后台方法基本格式: var operData = ...; //传递的参数(action中定义的) var type = ...; //传递的参数(action ...
- Asp.Net MVC以 JSON传值扩展方法
Asp.Net在客户端和服务器端,以JSON形式相互传值,可写扩展方法,用到的类型如下: DataContractJsonSerializer类: 该类在System.Runtime.Serializ ...
- ASP.net MVC 文件下载的几种方法
ASP.net MVC 文件下载的几种方法(欢迎讨论) 在ASP.net MVC 中有几种下载文件的方法前提:要下载的文件必须是在服务器目录中的,至于不在web项目server目录中的文件下载我不 ...
- Asp.Net MVC以JSON传值扩展方法
Asp.Net在客户端和服务器端,以JSON形式相互传值,可写扩展方法,用到的类型如下: DataContractJsonSerializer类: 该类在System.Runtime.Serializ ...
- ASP.NET MVC系列:控制器的Edit方法
在前面我们已经介绍了如何创建控制器.视图和数据模型,运行之前的项目并打开Movies主页,将鼠标悬停在“编辑”菜单上,你会看到浏览器右下角显示了“编辑”链接的地址
随机推荐
- python分割sql文件
之前用joomla帮一学校做了个网站,然后要部署到他们到服务器上,他们只提供了sftp和phpmyadmin的账号,上传网站文件倒是挺顺利的,但后来用phpmyadmin导入mysql数据就遇到问题了 ...
- IOS 多线程之GCD
参考:http://www.cnblogs.com/wendingding/p/3806821.html <<Objective-C基础教程>> 第二版 一 简介 GCD 全称 ...
- [简历] JAVA 软件工程师
首先,一份好的简历不光说明事实,更通过FAB模式来增强其说服力. Feature:是什么 Advantage:比别人好在哪些地方 Benefit:如果雇佣你,招聘方会得到什么好处 其次,写简历和写议论 ...
- 在ADS上由于volatile惹得祸
C语言关键字volatile是一个危险的东东,笔者再用ADS做S3C2440定时器中断实验就因为这个关键字出了错.出现错误情况的准确描述是:定义一个变量时没有用volatile关键字,而且紧接着whi ...
- Array 原型扩展(快速排序,搅乱顺序)
/// 快速快速排序算法Array.prototype.quickSort = function (left, right) { // left = left || 0; // right = rig ...
- C语言中返回字符串函数的四种实现方法
转自C语言中返回字符串函数的四种实现方法 其实就是要返回一个有效的指针,尾部变量退出后就无效了. 有四种方式: 1.使用堆空间,返回申请的堆地址,注意释放 2.函数参数传递指针,返回该指针 3.返回函 ...
- ECMall系统请求跳转分析
ecmall是一个基于mvc模式框架系统,跟thinkphp有点像.先从ecmall的入口开始,ecmall入口文件upload/index.php.admin.php: index.php启动ecm ...
- WordPress 全方位优化指南(上)
作为一个全面的 WordPress 性能优化教程,本文旨在帮助读者排查 WordPress 网站的性能问题,同时也提供网站前端优化加速的建议. 如果你曾经遇到过 WordPress 管理界面加载缓慢. ...
- PYTHON之DEF
def sayHello(): print('Hello World!') while True: s = input('Enter something : ') if s == 'quit': br ...
- windows下DOS命令中查看被占用端口的进程
今天在用tomcat 运行项目时报错: java.net.BindException: Address already in use: JVM_Bind这个错误 刚开始有点怀疑是javaw.e ...