2015-02-08 45 views
0

我一直在嘗試使用標準的HTML5輸入作爲劍道的UI電網 即Kendo-ui Grid:標準的HTML5輸入日期時間可以用作單元格編輯器嗎?

<input type="datetime-local" value="1996-12-19T16:39:57" /> 

我喜歡這一個在日期時間控件一個單元格編輯器,你可以使用箭頭鍵轉到各日期時間分量,然後用向上箭頭編輯日期時間的那部分。

我試圖定義下面的單元格模板函數..

function timeEditor(container, options) { 
    var input = $('<input "datetime-local" name="' + options.field +'" />') 
    input.appendTo(container);   
} 

,並給予這在列定義相應的字段..

columns: [ 
    { 
    field: "Time", 
    title: "Time", 
    width: "180px", 
    editor: timeEditor,  
    }, 

編輯器被實例化(我得到一個點擊中的斷點),但我沒有按預期顯示控件。

我對kendo ui比較陌生(我正在試用它),所以也許我在這裏有圓頂的東西簡單的錯誤?或者有可能使用它?

預先感謝任何幫助 的問候,彼得

+1

不知道,「日期時間 - 本地」輸入不會在很多瀏覽器的工作。 – dandavis 2015-02-08 01:03:29

+0

感謝那@dandavis我看到(在谷歌搜索之後)。 – peterc 2015-02-08 06:57:02

回答

1

你會是正確的,但你的HTML是錯誤的。

<input "datetime-local ... 

缺少type= atrribute名稱,應該是:

<input type="datetime-local ... 

也請記住,在自定義編輯器,你將不得不做設定值,並更新你的工作數據如果有人更改了輸入框的值,那麼您可能還需要添加一個.on('change' ...)事件處理程序。

一個完全工作的編輯會是這個樣子:

function timeEditor(container, options) { 
    var input = $('<input type="datetime-local" name="' 
     + options.field 
     +'" value="' 
     + options.model.get(options.field) 
     + '" />'); 
    input.on('change', options.model.set(options.field, input.val())); 
    input.appendTo(container);   
} 
+0

感謝@CodeWithSpike!這當然似乎現在起作用。看起來這個控件的支持很少(如上所述),它可能是我所見過的處理日期和時間的最佳控件之一(我至少在Chrome中獲得的控件)。 – peterc 2015-02-08 07:00:02

相關問題