如何在不使用html.kendio()。dropdownlist()的情况下将htmlhelper下拉列表更改为kendo ui下拉列表?

时间:2013-11-12 19:26:48

标签: jquery asp.net-mvc-4 razor kendo-ui html-helper

我在视图中使用htmlhelper下拉列表:

@Html.DropDownListFor(model => model.GroupID, (SelectList)ViewBag.Groups, "Choose...",
new { id = "GroupsDropDown" })

ViewBag.Groups= new SelectList(db.Groups.ToList(), "GroupID", "GroupName");

我有两个问题: 1-如何在不使用“Html.Kendo()。DropDownListFor(...)使用jquery的情况下将Html.DropDownListFor()更改为Kendo dropDown?  我使用下面的代码,但它不起作用:

<script type="text/javascript">
        $("[id$='DropDown']").kendoDropDownList();
</script>

2-我是否使用ViewBags来填充我的下拉菜单,...?有没有更好的方法可以代替viewbag使用?

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

我不确定您尝试的选择器是否实际返回DropDownList。

您是否尝试使用

$('#GroupID').kendoDropDownList();

使用ViewBag就好了。

答案 1 :(得分:0)

您的jquery选择看起来不正确。应该是$(“#GroupsDropDown”)。 至于你的第二个问题,我更喜欢绑定到IEnumerable。如果我不缓存项目,我通常将此作为我的模型的属性。如果我正在缓存,我将它们放在一个ReferenceData类中。(例如model.ReferenceData.MyDropDownListItems)@ Html.DropDownListFor会有一个重载,如果你使用Kendo,你可以使用Kendo的.BindTo方法。