kendo ui - mvc - Cómo establecer el valor predeterminado en Kendo DropDownList
kendo ui dropdownlist template (3)
Tengo una DropDownList de Kendo, pero curiosamente no puedo establecer su valor inicial.
Html.Kendo().DropDownList()
.Name("PersonalCoachName")
.BindTo(new SelectList((List<string>)ViewData["coachResources"]))
.HtmlAttributes(new { style = "font-size:8pt;" })
ViewData ["coachResources"] es una lista de tipo de cadena. Independientemente de lo que uso
.BindTo(new SelectList((List<string>)ViewData["coachResources"], "Default"))
or
.SelectedIndex(3)
DropDownList no cambia su valor y solo muestra el primer valor en la lista. Necesito ayuda en esto. Gracias.
El valor solo funciona en jquery, no en html helper. Entonces funciona en Jquery
var dropdownlist = $("#PersonalCoachName").data("kendoDropDownList");
dropdownlist.value(coachId);
dropdownlist.refresh();
Use el ''índice'' de propiedades al inicializar el cuadro combinado de kendo para establecer el valor predeterminado.
$("#fabric").kendoComboBox({
autoWidth: true,
dataTextField: "text",
dataValueField: "value",
dataSource: [
{ text: "Cotton", value: "1" },
{ text: "Polyester", value: "2" },
{ text: "Cotton/Polyester", value: "3" },
{ text: "Rib Knit", value: "4" }
],
filter: "contains",
suggest: true,
index: 3
});
Use el método de valor. Vea el código de ejemplo a continuación.
@(Html.Kendo().DropDownList()
.Name("DropDownListName")
.DataTextField("Text")
.DataValueField("Value")
.BindTo(model.DropDownListItems)
.Value(model.Selected)
)
EDITAR: DropDownList necesita vincularse a List<SelectListItem>
y se puede inicializar como se ve a continuación.
var items = new List<SelectListItem>
{
new SelectListItem { Text = "Item0", Value = "0" },
new SelectListItem { Text = "Item1", Value = "1" }
};
Además, recomendaría usar MVVM para adjuntarlo a la vista.
public class DropDownViewModel
{
public String Selected;
public List<SelectListItem> DropDownListItems;
public DropDownViewModel(String selected, List<SelectListItem> dropDownListItems)
{
Selected = selected;
DropDownListItems = dropDownListItems;
}
}