首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVC3 DropDownList -修改在SelectedIndexChanged上以表单形式显示的数据?

MVC3 DropDownList -修改在SelectedIndexChanged上以表单形式显示的数据?
EN

Stack Overflow用户
提问于 2012-10-31 19:36:46
回答 2查看 472关注 0票数 0

我的模型中有两个DropDownList元素。

代码语言:javascript
复制
[DisplayName("Site")]
public List<KeyValuePair<int, string>> Site { get; set; }
public int SelectedSiteID { get; set; }
<%= Html.DropDownListFor(model => model.SelectedSiteID, new SelectList(Model.Site, "Key", "Value"))%>

[DisplayName("Data Center")]
public List<KeyValuePair<int, string>> DataCenter { get; set; }
public int SelectedDataCenterID { get; set; }
<%= Html.DropDownListFor(model => model.SelectedDataCenterID, new SelectList(Model.DataCenter, "Key", "Value"))%>

当用户更改第一个选择时,我试图在第二个DropDownList中修改ListItem的集合。

我认为这是有可能的,但我想确认这是一个良好的做法:

  • 使用jQuery,绑定到第一个DropDownList的change事件。
  • 当响应变更事件时--用新选择的值向服务器发送AJAX请求。
  • 服务器将使用表示第二个ListItem对象集合的JSON进行响应。
  • 使用jQuery,我修改了第二个DropDownList的选择,使其包含返回的JSON元素。

这一切似乎有点..。非MVC3y,如果你愿意的话。这是实现我所要求的目标的标准方式,还是有更明确的方法?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-31 20:07:31

我认为最好在这个场景中使用Jquery。

最好的方法是将firstDropdown框绑定到Jquery中的OnChange事件,然后使用$.ajax在Controller中加载来自JSONresult的数据。一旦加载了该数据,就会在secondDropdown中加载数据。

如果您需要代码帮助,请告诉我。

票数 0
EN

Stack Overflow用户

发布于 2012-10-31 20:13:38

我使用jQuery级联选择插件为我做到这一点。这是很容易插入,不需要你重新发明车轮。http://code.google.com/p/jquery-cascade/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13166253

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档