Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 如何在MVC Razor视图的下拉列表中添加新选项?_Asp.net Mvc 3_Razor - Fatal编程技术网

Asp.net mvc 3 如何在MVC Razor视图的下拉列表中添加新选项?

Asp.net mvc 3 如何在MVC Razor视图的下拉列表中添加新选项?,asp.net-mvc-3,razor,Asp.net Mvc 3,Razor,我在MVC 3 razor视图中有两个下拉列表,如下所示: @Html.DropDownListFor(m => m.UserGroups, Model.UserGroups.Select(x => new SelectListItem() { Text = x.Name, Value = x.Id }), new { @class="pad5" }) 他们工作得很好。我要做三个改变- 1) 第一个需要在列表顶部添加一个新选项 <option value="">--pi

我在MVC 3 razor视图中有两个下拉列表,如下所示:

@Html.DropDownListFor(m => m.UserGroups, Model.UserGroups.Select(x => new SelectListItem() { Text = x.Name, Value = x.Id }), new { @class="pad5" })
他们工作得很好。我要做三个改变-

1) 第一个需要在列表顶部添加一个新选项

<option value="">--pick--</option>

如果已创建viewmodel,只需对每个下拉列表执行以下操作:

@model Namespace.myViewModel
<select id="dropdownOne" name="dropdownOne">
    <option   value="">--pick--</option>
    @foreach (var item in Model.myModel)
    {
        if(@item.id==100) {
            <option value="@item.id" selected="selected">@item.Name</option>
        }
        else {
            <option value="@item.id>@item.Name</option>
        }
    }
</select>
@model Namespace.myViewModel
--挑--
@foreach(Model.myModel中的var项)
{
如果(@item.id==100){
@项目名称
}
否则{

我可以在页面加载后通过jquery来实现这一点。但我更喜欢在razor视图声明中实现。可以使用Html.DropDownListFor()来代替手动循环/构建dropwown吗我有声明?老实说,我不知道,我用DropDownListFor尝试过,但问题是,对于我的编程,我有很多条件,所以这是一条很长的线,我个人觉得这种方法更容易。
new { @id="ViewGroup", @name="ViewGroup"}
@model Namespace.myViewModel
<select id="dropdownOne" name="dropdownOne">
    <option   value="">--pick--</option>
    @foreach (var item in Model.myModel)
    {
        if(@item.id==100) {
            <option value="@item.id" selected="selected">@item.Name</option>
        }
        else {
            <option value="@item.id>@item.Name</option>
        }
    }
</select>