我对ASP.NET MVC5上动态填充的下拉列表有疑问。 让我们简化一下数据:
public class Country {
public int Id {get;set;}
public string InternationalCode {get;set;}
public string Name {get;set;}
public virtual ICollection<City> Cities {get;set;}
...
}
public class City{
public int Id {get;set;}
public int CountryId {get;set;}
public string Name {get;set;}
...
}
在我的控制器中,我将国家/地区传递给ASP.NET的标准下拉帮助程序并在视图中显示 - 这里没有任何问题,感谢这个post。我的问题出现在这里 - 让我们说我在第一个下面有另一个下拉列表。如何根据首次下拉结果动态填充? 我在Controller中定义了以下方法:
public IEnumerable<City> GetCitiesFromCountry(int countryId) => db.Countries.Find(countryId).Cities;
如何在不重新加载页面的情况下调用它?我不能使用像Angular \ Knockout这样的高级技术 - 只允许使用JavaScript \ jQuery \ Ajax。
答案 0 :(得分:0)
下拉级联最简单的方法应该是jquery ajax调用。根据所选id选择第一个下拉列表后,执行json jquery ajax调用获取下一个下拉列表所需的数据并填充该数据。您可以在控制器中编写mvc json结果操作以获取数据。