2017-08-21 125 views
0

我在我的應用程序中使用劍道網格。 在那個網格中,我使用了kendo下拉列表。 我有一個數組,用於該dropdownlist的數據源。 陣列看起來像從下拉列表中選擇選項後顯示對象對象的Kendo UI網格中的下拉

var arr = [{text: "demo 1", value: 1}, {text: "demo 2", value: 2}] 

我DROPDOWNLIST看起來像:

$("#grid").kendoGrid({ 
     dataSource: dataSource, 
     navigatable: true, 
     pageable: true, 
     height: 550, 
     filterable: { 
      mode: "row" 
     }, 
     sortable: { 
      mode: "single", 
      allowUnsort: false 
     }, 
     toolbar: ["create"], 
     columns: [ 
      { field: "Item", title: "Item", width: "300px", editor: categoryDropDownEditor } 
     ], 
     editable: true 
    }); 

    function categoryDropDownEditor(container, options) { 
     $('<input data-text-field="text" data-value-field="value" data-bind="value:' + options.field + '" />') 
      .appendTo(container) 
      .kendoDropDownList({ 
       dataSource: arr, 
       autoBind: true, 
       dataTextField: "text", 
       dataValueField: "value", 
      }); 
    } 

它表示下拉正確,但是從下拉選擇選項之後的文本向下它顯示對象對象作爲所選擇的文本。

附下拉選擇的價值和期權後的截圖選擇 Image of option selectingAfter option selected

我已經嘗試了很多解決方案,但沒有工作了。 如果有人提供解決方案,那將會很棒。

感謝

回答

0

嘗試刪除您categoryDropDownEditordata-text-fielddata-value-field

爲您做了jsFiddle。檢查這一個。

+0

你提供的小提琴也有同樣的問題。 嘗試添加新記錄,然後從下拉列表中選擇選項。它顯示「對象對象」 – Gourav

+0

我在'kendoDropDownList'上添加了一個'valuePrimitive'。 http://jsfiddle.net/0zauzskn/6/ –

+0

感謝但增加valuePrimitive顯示我的價值,如果我使用dataValueField:「值」而不是「文本」的選項。 我必須添加dataValueField作爲值,因爲我需要將其保存在數據庫中。 – Gourav

0

我只是更新了 「卡拉Tilos的的」 的jsfiddle代碼,

http://jsfiddle.net/0zauzskn/5/

這會給你你想要的結果。

我已經加入

schema: { 
    model: { 
     fields: { 
      item: { type: "string" } 
     } 
    } 
} 

進入您的數據源

最好的運氣。

+0

感謝您的響應,但這是行不通的,因爲我已經將dataValueField從文本更改爲值,因爲我希望獲得選定選項的值以進一步處理它。 在你的小提琴中,它將返回文本而不是值,因爲dataValueField被作爲文本提及。 – Gourav

相關問題