javascript - AJAX 之后的 Kendo DropDownList 选择值
问题描述
我尝试在来自 AJAX 的数据到来后选择 DropDownList 值,但我的解决方案不起作用这是我的代码:
function openWindow(e) {
var wdw = $("#myWindow").data("kendoWindow");
wdw.open();
e.preventDefault();
var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
var grid = $("#grid").data("kendoGrid");
grid.dataSource.transport.options.read.url = '@Url.Action("BindingList", "AttributeBinding")' + "?formId=" + dataItem.FormId;
grid.dataSource.read();
$("#title").html(dataItem.FormTitle);
$("#dropdown").kendoDropDownList({
optionLabel: "- please select -",
dataTextField: "StringValue",
dataValueField: "Id",
dataSource: {
transport: {
read: {
url: '@Url.Action("PopUpBind", "AttributeBinding")',
dataType: "json",
},
},
requestEnd: function () {
$("#dropdown").data('kendoDropDownList').value(dataItem.MultiLinkerProductAttributeId);
}
}
});
};
加载 DropDown 后,我可以通过 Web 浏览器控制台设置 #dropdown 值,但是相同的代码不适用于 dataSource 中的 requestEnd 函数
解决方案
DataSource中的事件requestEnd在数据请求完成时触发,但数据不必绑定到小部件。由于选择是指小部件(DropDownList),您应该使用dataBound
您的代码将类似于:
function openWindow(e) {
var wdw = $("#myWindow").data("kendoWindow");
wdw.open();
e.preventDefault();
var dataItem = this.dataItem($(e.currentTarget).closest("tr"));
var grid = $("#grid").data("kendoGrid");
grid.dataSource.transport.options.read.url = '@Url.Action("BindingList", "AttributeBinding")' + "?formId=" + dataItem.FormId;
grid.dataSource.read();
$("#title").html(dataItem.FormTitle);
$("#dropdown").kendoDropDownList({
optionLabel: "- please select -",
dataTextField: "StringValue",
dataValueField: "Id",
dataSource: {
transport: {
read: {
url: '@Url.Action("PopUpBind", "AttributeBinding")',
dataType: "json",
},
}
},
dataBound: function(e) {
this.value(dataItem.MultiLinkerProductAttributeId);
}
});
};
推荐阅读
- c# - 尝试显示 umbraco 文件夹中的图像时出错
- angular - Angular:访问投影的 FormGroup
- elasticsearch - 如何将文档特征信息(从其他来源提取)添加到现有的弹性搜索索引?
- r - 逐对计算行相似性百分比并将其添加为新列
- mysql - JOIN 语句的 SQL 问题(来自 1 个表的多个结果)
- android - 如何在 Android 中从 JSONObject 生成 PDF?
- vue.js - 防止 Vuetify v-tabs 发生变化
- stored-procedures - SAP HANA 出口声明
- facebook-graph-api - OAuthException error_message:“无效范围:[]”我做错了什么?
- php - 添加电子邮件和名字以重置密码电子邮件 woocommerce