我在 MVC 3 Razor 视图中有以下标记。照原样,组合框正确呈现,但当我单击下拉箭头时不会下拉。如果我删除由创建视图模板添加到视图中的 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 引用放回去只是为了一个代码示例之后,我的代码现在也可以与它们一起使用。