Telerik MVC Combobox上的客户端事件问题

时间:2010-12-16 12:20:56

标签: asp.net-mvc telerik asp.net-mvc-3 telerik-mvc

我在MVC 3 Razor视图中有以下标记。因此,ComboBox正确渲染,但在单击下拉箭头时不会下拉。如果我删除由创建视图模板添加到视图的jQuery验证脚本引用,则所有工作都可以。这可能有什么问题?

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
<script type="text/javascript">
    function provinceChanged() {
        var cityCombo = $('#Cities').data('tComboBox');
        cityCombo.loader.showBusy();

        $.get(url, { provinceId: e.value }, function (data) {
            cityCombo.dataBind(data);
            cityCombo.loader.hideBusy();
            cityCombo.enable();
        });
    }
</script>

...

<div class="editor-field">
    @(Html.Telerik().ComboBox()
        .Name("Provinces")
        .SelectedIndex(1)
        .BindTo(new SelectList(Model.ProvinceList, "ProvinceId", "Name"))
        .ClientEvents(events => events.OnChange("provinceChanged"))
    )
</div>

以下是我在主布局中引用jQuery的方法:

<head>
    <title>@ViewBag.Title</title>
    <link href="@Url.Content("~/Styles/Blueprint/screen.css") rel="stylesheet" type="text/css" />
    <link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
    @Html.Telerik().StyleSheetRegistrar().DefaultGroup(group => group.Add("telerik.common.css").Add("telerik.vista.css"))
    <script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
</head>

已解决:我不知道还有哪些更改,但在将jQuery Validate引用仅用于代码示例之后,我的代码现在也适用于它们。

1 个答案:

答案 0 :(得分:1)

检查this。您可能正在使用与jQuery.fn.delegate冲突的旧版本的jquery.validate.js。