【发布时间】:2020-06-14 10:47:35
【问题描述】:
我有两个通过 ViewData 填充视图的选择,
在视图中,
@{
IEnumerable<Region> region = ViewData["regions"] as IEnumerable<Region>;
IEnumerable<City> city = ViewData["cities"] as IEnumerable<City>;
}
<tfoot>
<tr>
<td><input type="text" id="txtTribeName" /></td>
<td>
<select id="ddlregion" name="RegionId">
<option value="0">Select Region</option>
@foreach (Region re in region)
{
<option value="@re.RegionID">@re.RegionName</option>
}
</select>
</td>
<td>
<select id="ddlcity" name="CityId">
<option value="0">Select City</option>
@foreach (City re in city)
{
<option value="@re.CityID">@re.CityName</option>
}
</select>
</td>
@*<td>@Html.dropDropDownListFor(ViewData["regions"] as IEnumerable<SelectListItem>)</td>*@
<td><input type="button" id="btnAdd" value="Add" /></td>
</tr>
</tfoot>
我的脚本是这样的,
$("body").on("change", "#ddlregion", function () {
});
在使用IEnumerable<City> city的脚本中,我可以根据地区对其进行排序
希望提出建议。
编辑:
我的控制器从 Ef 传递区域和城市,
TribeEntities Db = new TribeEntities();
ViewData["regions"] = Db.Regions;
ViewData["cities"] = Db.Cities;
【问题讨论】:
-
澄清一下,您要根据所选区域过滤城市吗?按过滤器,你只想排序?还是要隐藏和显示选项?
-
我想根据地区过滤城市。当我选择特定区域时,城市下拉菜单仅显示该区域下的城市
-
好的,知道了。您是否会在问题中包含 City Class(代码)。谢谢。
-
City 类实际上是我直接使用的实体框架城市表。检查我编辑的问题。
-
City 表有 city id 、 cityname 和 regionid 。其中区域表只有 regionid 和 regionname
标签: c# jquery asp.net-mvc select model-view-controller