在我的mvc视图中,我有一个从字典中获取值的DropDownList
<div class="InputPart">
@(Html.Telerik().DropDownListFor(model => model.PasportAddressRegionID)
.Name("ddlfRegions1")
.BindTo(new SelectList((IEnumerable<Dictionary>)ViewData["Regions"], "ID", "Title"))
.ClientEvents(e => e.OnChange("changeRegion1"))
.HtmlAttributes(new { style = "min-width:200px" }))
</div>
我有JS函数 changeRegion1()来获取这些值。
<script type="text/javascript">
function changeRegion1() {
var rgnId = $('#ddlfRegions1').data('tDropDownList').value();
$.ajax({
url: '@(Url.Action("_GetDistrict", "Staffs"))',
data: { regionId: rgnId },
type: "POST",
success: function (result) {
var combobox = $('#ddlfDistricts1').data('tDropDownList');
combobox.dataBind(result);
combobox.enable();
}
});
} </script>
我把函数放在同一个视图中,在所有代码下面,但是在运行时我得到未捕获的ReferenceError:未定义changeRegion1 。函数本身没问题,但在我看来,事件处理程序在这里看不到它。 所以我只是想知道这里有什么问题?我应该如何参考这个功能?
感谢任何帮助
答案 0 :(得分:-1)
以下是针对ASP.Net和MVC的Kendu UI下拉列表事件处理的示例。与您的代码比较。该示例显示了事件,您调用ClientEvents,否则看起来没问题。
http://docs.telerik.com/aspnet-mvc/helpers/dropdownlist/overview
@(Html.Kendo().DropDownList()
.Name("dropdownlist")
.BindTo(new string[] { "Item1", "Item2", "Item3" })
.Events(e => e
.Select("dropdownlist_select")
.Change("dropdownlist_change")
)
)
<script>
function dropdownlist_select() {
//Handle the select event.
}
function dropdownlist_change() {
//Handle the change event.
}