在Asp.Net中使用JQuery绑定DropDownlists
发布时间:2020-12-16 04:30:36 所属栏目:asp.Net 来源:网络整理
导读:我有3个国家,州和地铁下拉列表. 我想当用户分离国家然后状态下拉列表填充 Jquery时,选择Sate然后Metro下拉列表填充(如ajax的级联下拉列表).这个过程我想用JQuery. 解决方法 我将在ASP.NET MVC中对其进行描述,但是如果您编写ASP.NET Web服务或者只是在代码中
我有3个国家,州和地铁下拉列表.
我想当用户分离国家然后状态下拉列表填充 Jquery时,选择Sate然后Metro下拉列表填充(如ajax的级联下拉列表).这个过程我想用JQuery. 解决方法
我将在ASP.NET MVC中对其进行描述,但是如果您编写ASP.NET Web服务或者只是在代码中添加一些页面方法来执行相同操作,则可以实现相同的目的 – 您还需要一个JSON序列化程序,可以是第三方解决方案,也可以是WCF中的解决方案.
使用MVC,首先,让我们有三个控制器动作 – 一个用于显示页面,一个用于静态,两个用于分别获取状态和都市: public ActionResult Index() { ViewData["Countries"] = _countryRepository.GetList(); return View(); } public ActionResult States(string countryCode) { var states = _stateRepository.GetList(countryCode); return Json(states); } public ActionResult Metros(string countryCode,string state) { var metros = _metroRepository.GetList(countryCode,state); return Json(metros); } 在视图中,您有三个DropDownLists,一个绑定到ViewData [“Countries”]对象,比如说它名为Countries,您可以通过Ajax调用获取jQuery中的状态,如下所示: $('#Countries').change(function() { var val = $(this).val(); $states = $('#States'); $.ajax({ url: '<%= Url.Action('States') %>',dataType: 'json',data: { countryCode: val },success: function(states) { $.each(states,function(i,state) { $states.append('<option value="' + state.Abbr+ '">' + state.Name + '</option>'); }); },error: function() { alert('Failed to retrieve states.'); } }); }); Metros下拉列表将以类似方式填充,将国家和州选择传递给服务器并返回带有一系列都市区域的JSON对象. 我省略了存储库实现的细节,只是以某种方式用服务器上的结果变量填充状态/都市区域的集合.我还假设State类有两个属性 – Abbr(例如’CA’)和Name(例如California). 我希望它能以任何方式帮助您,或者至少指导您以某种方式解决问题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- asp.net-mvc-4 – 使用WebAPI进行搜索
- asp.net – .NET Core WebAPI OpenIdDict(凭据流
- asp.net-mvc – 在MVC命令,优先级和功能问题中授
- 有没有办法以编程方式设置ASP.NET Universal Pro
- 什么是链接服务器的ASP.NET连接字符串格式?
- asp.net-mvc – LINQ匿名类型MVC视图
- asp.net-web-api – WebAPI:403在发布网站后被禁
- 如何使用asp.net mvc实现会话超时页面
- asp.net-mvc-5 – MVC5 RadioButtonFor模型属性未
- asp.net – 可以使用URI模板来匹配URI到路由吗?
热点阅读