asp.net-mvc – 使用JSON结果填充下拉列表 – 使用MVC3,JQuery,A
发布时间:2020-12-15 23:05:47 所属栏目:asp.Net 来源:网络整理
导读:我有一个级联的drop-drown使用mvc.如果您在第一个下拉列表中选择一个国家/地区,那么第二个国家/地区的状态应该相应地填充. 目前,似乎都很好,我正在收到Json的回应(看到它使用F12工具),它看起来像[{“stateId”:“01”,“StateName”:“arizona”},{“state
我有一个级联的drop-drown使用mvc.如果您在第一个下拉列表中选择一个国家/地区,那么第二个国家/地区的状态应该相应地填充.
目前,似乎都很好,我正在收到Json的回应(看到它使用F12工具),它看起来像[{“stateId”:“01”,“StateName”:“arizona”},{“stateId” :“02”,“州名”:“加州”}等..] 我想知道如何使用这些数据填充我的第二个下拉列表.我的第二个下拉列表的ID是“StateID”.任何帮助将不胜感激. 以下是从服务器生成JSON响应的代码: [HttpPost] public JsonResult GetStates(string CountryID) { using (mdb) { var statesResults = from q in mdb.GetStates(CountryID) select new Models.StatesDTO { StateID = q.StateID,StateName = q.StateName }; locations.statesList = stateResults.ToList(); } JsonResult result = new JsonResult(); result.Data = locations.statesList; return result; } 以下是客户端HTML,我的剃刀代码和我的脚本.我想在“成功:”中写入一些代码,以便使用JSON数据填充国家下拉列表. <script type="text/javascript"> $(function () { $("select#CountryID").change(function (evt) { if ($("select#CountryID").val() != "-1") { $.ajax({ url: "/Home/GetStates",type: 'POST',data: { CountryID: $("select#CountryID").val() },success: function () { alert("Data retrieval successful"); },error: function (xhr) { alert("Something seems Wrong"); } }); } }); }); </script> 解决方法
首先,在jQuery事件处理函数内部,这是指触发事件的元素,因此您可以用$(this)替换$(“select#CountryID”)的其他调用.尽管在可能的情况下,您应该直接访问元素属性,而不是使用jQuery函数,因此您可以简单地执行this.value而不是$(this).val()或$(“select#CountryID”).val().
然后,在AJAX调用成功函数的内部,您需要创建一系列< option>元素.这可以使用基本的jQuery()函数(或简称为$())来完成.这样会看起来像这样: $.ajax({ success: function(states) { // states is your JSON array var $select = $('#StateID'); $.each(states,function(i,state) { $('<option>',{ value: state.stateId }).html(state.StateName).appendTo($select); }); } }); 这是一个jsFiddle demo. 相关的jQuery文档: > (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – OwinMiddleware不保留.net 4.6中的文化变化
- asp.net-mvc – ASP.NET MVC 4在调试模式下捆绑js文件
- asp.net – HTTP错误404.15请求过滤模块配置为拒绝查询字符
- 打造自己的.NET Core项目模板
- 用例子看ASP.NET Core Identity是什么?
- asp.net-mvc-3 – 如何增加会话超时MVC 3
- asp.net – 触发OWIN cookie中间件设置为被动身份验证模式的
- ASP.NET Core知多少(7):对重复编译说NO -- dotnet watch
- Asp.Net中ajax+ashx使用详解
- 在asp.net identity 2.0中获取分配角色的用户列表
推荐文章
站长推荐
- asp.net-mvc-3 – EF 4.1 Code First多个多对多关
- 我可以/我应该将新的ASP.NET MVC 2 RC项目升级到
- asp.net-mvc – 如何从编辑器模板添加JavaScript
- asp.net-mvc – 如何链接到将数组作为参数(Redir
- 如何自定义Asp.net Identity 2用户名已经采取验证
- asp.net-mvc-3 – 当用户需要再次登录时,Ajax.Ac
- 在ASP.NET中的单个页面上添加SSL
- asp.net – 使用HtmlTextWriter渲染服务器控件?
- asp.net-mvc – 实体框架5迁移:设置初始迁移和数
- ASP.NET bin目录中的Oracle oci.dll无法删除/不起
热点阅读