Kendo DropdownList MVC在读取成功时绑定JS函数
Posted
技术标签:
【中文标题】Kendo DropdownList MVC在读取成功时绑定JS函数【英文标题】:Kendo DropdownList MVC bind JS function on Read Success 【发布时间】:2021-06-30 21:54:49 【问题描述】:我正在使用 Kendo ASP.NET MVC,并有一个带有 DataSource
的 html.Kendo().DropDownListFor
控件。数据源绑定在 cshtml 文件中。我需要在 jquery 中捕获读取的成功事件。在 Kendo Jquery 中我们可以有如下的东西。
read:
url: "/Test/GetById",
success: function(result)
//custom code;
我怎样才能在 MVC 控件中拥有相同的东西。
Html.Kendo().DropDownListFor(model => model.Prop)
.DataTextField("Field")
.DataValueField("Id")
.DataSource(dataSource =>
dataSource.Read(read => read.Action("Action", "CTRL"));
);
有什么我应该捕捉的事件吗?
【问题讨论】:
【参考方案1】:requestEnd 和 error 事件可用于此目的。如果由于某种原因您的读取方法失败,则会触发错误事件。否则,将触发 requestEnd 事件。然后您可以检查事件数据中的type
是否等于read
,这意味着Read 方法已成功完成。
这是一个例子:
<script>
function onError(e)
console.log(e.status) // displays "error";
,
function onRequestEnd(e)
if (e.type === "read")
// Read method successfully finished
</script>
@(Html.Kendo().DropDownList()
.Name("products")
.DataTextField("ProductName")
.DataValueField("ProductID")
.DataSource(source =>
source.Read(read => read.Action("RemoteDataSource_GetProducts", "DropDownList"));
source.Events(events => events.Error("onError").RequestEnd("onRequestEnd"));
)
)
查看kendo.data.DataSource 的配置页面以获取有关事件的更多信息。
【讨论】:
以上是关于Kendo DropdownList MVC在读取成功时绑定JS函数的主要内容,如果未能解决你的问题,请参考以下文章
Kendo DropDownList 问题在 MVC 上调用操作
在 Kendo Scheduler 自定义模板中绑定 DropDownList(ASP.NET MVC Wrapper 版本)
Kendo Jquery ForeignKey Dropdownlist 值
Knockout-Kendo dropdownlist Ajax observableArray 获取选中项名称