无法从 Kendo 组合框中获取值

Not able to get value from the Kendo Combobox

我在 Kendo 网格编辑器中使用以下代码,但无法从组合框中访问所选项目值的值。

此外,我在 Kendo 下拉列表中做了同样的事情,但无法 kendo 组合框,所以如果有人有解决方案,请告诉我。

提前致谢!

{
                    field: "SalesBookId",
                    title: "Sales Book",
                    template: "#= (typeof SalesBookId != 'undefined') ? GetSalesBookName(SalesBookId):'' #",
                    editor: function (container, options) {

                        $('<input required data-text-field="SalesBookName" data-value-field="SalesBookId" data-bind="value:' + options.field + '"/>')
                            .appendTo(container)
                            .kendoComboBox({
                                autoBind: false,
                                dataSource: dsSalesBookDropDown,

                            });
                    }
                },

您没有显示 dsSalesBookDropDown,也没有显示 GetSalesBookName,所以很难知道您的具体情况出了什么问题。

dojo 表明当配置、处理程序和数据都正确对齐时,应该不会有问题。

道场是基于示例 "Grid with local data",您的 SalesBook 概念已更改为示例的 Seller

自定义编辑器相关代码包含

var sellers = [
  { SellerId: 1, Name: "Andrew" },
  { SellerId: 2, Name: "Basil" },
  { SellerId: 3, Name: "Chuck" },
  { SellerId: 4, Name: "Dennis" },
  { SellerId: 5, Name: "Edward" }
  ];

var dsSellersDropDown = sellers;    

function GetSellerName (id) {
  var seller = sellers.find(function(x) {return x.SellerId == id });
  return (seller) ? seller.Name : "** invalid id " + id + " **";
}

var products = [{
    ProductID : 1,
    ProductName : "Chai",
SellerId: 1,
    SupplierID : 1,
    CategoryID : 1,
. . .

网格配置

                        dataSource: {
                            data: products,
                            schema: {
                                model: {
                                    fields: {
                                        ProductName: { type: "string" },
SellerId: { type: "number" },

                        columns: [
                            "ProductName",
{ field: "SellerId",
  title: "Seller Name",
  template: "#= (typeof SellerId != 'undefined') ? GetSellerName(SellerId):'' #",
  editor: function (container, options) {

    $('<input required data-text-field="Name" data-value-field="SellerId" data-bind="value:' 
+
options.field
+ '"/>')
    .appendTo(container)
    .kendoComboBox({
        autoBind: false,
        dataSource: dsSellersDropDown,
     });
  }
},
                        { field: "UnitPrice", title: "Unit Price", format: "{0:c}", width: "130px" },