2011-09-22 111 views
0

如何从CSHTML页面中获取DropdownList选项。如何获取Dropdownlist选择的值

<div class="editor-field"> 
      @Html.DropDownList("ROUTE_GROUP_ID", String.Empty) 
      @Html.ValidationMessageFor(model => model.ROUTE_GROUP_ID) 
     </div> 
+0

是这个ASP.NET MVC? –

+3

获取价值在哪里?服务器,客户端? – Samich

+0

如果你使用'Html.DropDownListFor(x => x.selectedvalue,...)'你可能不需要问这个问题! – Cymen

回答

1

如果你想它在jQuery的价值,你可以像这样

$('#ROUTE_GROUP_ID').val(); 

,或者如果你想在控制它的价值可以从

Request.Form["ROUTE_GROUP_ID"] 

,或者如果您的控制器访问它有一个formcollection对象,然后访问值如

formcollectionobj["ROUTE_GROUP_ID"] 
0

从你的例子中,我不明白你将如何得到任何选定的值,因为你还没有定义从你的DropDownList将得到它的值的SelectList。

我建议你创建一个视图模型,填补了SelectItemList你RouteGroup,通过它的ID作为值。就像这样:

public class RouteGroupViewModel 
{ 

    public string SelectedRouteGroup { get; set; } 

    public List<SelectListItem> RouteGroup { get; set; } 

    public void FillRouteGroup() 
    { 
    //Fill your SelectList with your RouteGroup values 
    } 

} 

在您的看法:

@Html.DropDownListFor(item => item.SelectedRouteGroup, new SelectList(Model.RouteGroup, "Value", "Text")) 

并在您的控制器:

public ActionResult RouteGroup(RouteGroupViewModel rgVM) 
    { 
     //To Do your controller operations 
    } 

这样,您可以得到DropDownList的选定值。

+0

我通过viewbag列表即viewbag.ROUTE_GROUP_ID = db.RouteGroup.ToList(); –