/ / Crear condicionalmente una lista desplegable con el mismo nombre: javascript, c #, asp.net, asp.net-mvc-4

Crear condicionalmente la lista desplegable con el mismo nombre - javascript, c #, asp.net, asp.net-mvc-4

Tengo un valor proveniente del Modelo paradeterminar si estoy en modo de creación o en modo de edición ... Si estoy en modo de edición, quiero establecer el valor de una lista desplegable en el último valor guardado. Si estoy en modo de creación, quiero establecer mi lista desplegable en un valor predeterminado ...

* .ASCX

<% if(Model.isCreate == true)
{
Html.DropDownList("myOptionListName",
new SelectList(ViewBag.MyOptions, "Id", "Name"),
Resources.Global.DefaultMenuItem,
new { style = "width:200px" });
}
else
{
Html.DropDownList("myOptionListName",
new SelectList(ViewBag.MyOptions, "Id", "Name",
ViewBag.LastSavedOption),
new { style = "width:200px" });
}%>

Si solo uso uno u otro sin el if,el único menú funciona en un solo escenario ... Necesito usar "myOptionListName" como nombre porque tengo otro javascript que hace referencia a esto. Tal como está ahora, el código anterior no muestra ningún menú desplegable.

P: ¿Cómo puedo hacer que aparezca el menú en función de la verificación if pero que tenga el mismo nombre?

Respuestas

1 para la respuesta № 1

Puede crear su lista de selección en función de su modo del formulario y luego asignar la lista de selección adecuada a su control.

<% var selectList = new SelectList(ViewBag.MyOptions, "Id", "Name");

if(!Model.isCreate)
{
selectList = new SelectList(ViewBag.MyOptions, "Id", "Name",
ViewBag.LastSavedOption);
}

Html.DropDownList("myOptionListName", selectList ,
new { style = "width:200px" });
%>