使用下拉列表中的动态值设置属性

时间:2017-01-02 10:09:51

标签: javascript jquery asp.net-mvc

这里我想在动态下拉菜单中设置一个属性“选中”,当它在MVC中的HttpPost之后被点击时它会显示相同的第一个文本“请选择一个类别”。

@if (Model.objlist1.Count != 0) {
    <select id="catID" onchange="getID();this.form.submit();">
        <option id="removeIT" value="007">Please select a category</option>
        @foreach (var item in Model.objlist1) {
            //a++;
            <option value="@item.categoryID">@item.category</option>
        }
    </select>
    @Html.HiddenFor(m => m.categoryID, new { @id = "newCatID", @name = "newCatID" })
}

从HttpPost重新加载后,我想在foreach循环选项标记中的动态下拉列表中获取“selected”属性,方法是使用值检查并在选项标记中设置属性“selected”。

1 个答案:

答案 0 :(得分:0)

试试这样 在后端传递类别

 ViewData["category"] =  new SelectList(
new List<SelectListItem>
{
    new SelectListItem { Text = "Cat1", Value = 1},
    new SelectListItem { Text = "Cat2", Value = 2},
}, "Value" , "Text");
在您的视图中

@Html.DropDownListFor(model => model.categoryID,  ViewData["category"] as IEnumerable<SelectListItem>, "Please select a category")