Asp.net mvc 填充a<;选择>;当用户在另一个列表中选择值时,从服务器端集合中选择列表
如果用户从HTML下拉列表a中选择一个值,我想对服务器进行ajax调用,根据用户的选择填充HTML下拉列表B中的值Asp.net mvc 填充a<;选择>;当用户在另一个列表中选择值时,从服务器端集合中选择列表,asp.net-mvc,asp.net-mvc-3,entity-framework,entity-framework-4,asp.net-mvc-4,Asp.net Mvc,Asp.net Mvc 3,Entity Framework,Entity Framework 4,Asp.net Mvc 4,如果用户从HTML下拉列表a中选择一个值,我想对服务器进行ajax调用,根据用户的选择填充HTML下拉列表B中的值 我正在使用ASP.NETMVC4和EF4。我该怎么做?jQuery是你最好的朋友。首先将事件绑定到dropdownlist A,然后对服务器进行ajax调用。最后,获取响应并将其设置为dropdownlist B $('#ddlA').change(function() { $('#ddlB').load('server/pageThatReturnsHtml') });
我正在使用ASP.NETMVC4和EF4。我该怎么做?jQuery是你最好的朋友。首先将事件绑定到dropdownlist A,然后对服务器进行ajax调用。最后,获取响应并将其设置为dropdownlist B
$('#ddlA').change(function() {
$('#ddlB').load('server/pageThatReturnsHtml')
});
这假设“server/pageThatReturnsHtml”返回html,例如:
<option value="option1" selected="selected">Option 1</option>
<option value="option2">Option 2</option>
选项1
选择2
但是,您也可以返回一个json对象并迭代结果,将项目添加到ddl B中侦听第一个下拉列表的更改事件,然后以
json
格式加载第二个下拉列表的内容,并将其注入第二个下拉列表
<select id="country">
<option value='1'>USA</option>
<option value='2'>Canada</option>
</select>
<select id="States"></select>
假设
GetStatesForCountry
方法返回属性为ID
和Name
的状态对象列表。谢谢函数。我相信在循环中有几个修正。。。$.each(data.Items,函数(索引,项){Items+=“”+item.Name+“”;});
$(function(){
$("#country").change(function(){
var _this=$(this);
var items="";
$.getJSON("@Url.Action("GetStates","Country")/"+_this.val(),function(data){
if(data.Status==="Success")
{
$.each(data.Items,function(index, item){
items=+"<option value='"+item.ID+'">"+item.Name+"</option>";
});
}
$("#states").html(items);
});
});
});
public ActionResult GetStates(int id)
{
List<State> stateList=yourRepositary.GetStatesForCountry(id);
return Json(new { Status="Success", Items=stateList},
JsonRequestBehaviour.AllowGet);
}