我有一个剑道UI组合框对象像这样:
widget: "kendoComboBox",
options: {
dataTextField: "#:userFirstName# #:userLastName#",
dataValueField: "userId",
template: "#:userFirstName# #:userLastName#",
change: function (e) {
that.model.fn.bringUserData();
}
}
我可以安排模板,但我不能dataTextField值依赖于该模板。也可以将其设置为"userId"等。但是似乎不可能将选定值设置为#:userFirstName#& nbsp#:userLastName#。(dataTextFieldTemplate不工作)
你能帮我解决这个问题吗?正确,您不能使它由两个字段组成。它需要是一个字段本身。您可以做的是在从数据源读取数据时创建一个附加字段,该字段是这两个字段的连接。你可以像这样添加数据源定义:
var dataSource = new kendo.data.DataSource({
transport: {
read: {
url: "..."
}
},
schema: {
parse: function(response) {
$.each(response, function(idx, elem) {
elem.fullName = elem.firstName + " " + elem.lastName;
});
return response;
}
}
});
那么组合框的选项就是:
options: {
dataTextField: "fullName",
dataValueField: "userId",
...
}
在这里看到它的作用:http://jsfiddle.net/OnaBai/12hpLeux/1/