2017-11-11 76 views
1

我使用Jeditable來允許編輯我的頁面上的表格。它更新了一個MySQL表,它一切正常。允許在可裁剪環境中編輯日期時間值的最佳方法?

我想添加編輯日期時間值的功能。所以我嘗試使用jquery.jeditable.datepicker.js來完成這項工作。但它只適用於日期值而不是日期時間值。

$('.editTimeIn').editable('save.php', { 
    type  : 'datepicker', 
     datepicker: { 
      dateFormat: 'yy-mm-dd', 
      numberOfMonths: 2 
     } 
}); 

我需要能夠讓用戶選擇日期和時間。你對這個功能有什麼建議? 如果可能請使用示例。

+1

看看[這個答案](https://stackoverflow.com/questions/642136/jeditable-with-jquery-ui-datepicker#1406886)+它下面的第二個評論。 –

回答

1

jeditable文檔。

(字符串)類型:要使用的輸入類型。默認的輸入類型是文本textarea的選擇。其他輸入類型使用自定義的 輸入類型API提供。

所以,如果你在jeditable additional input types仔細看,你會看到,你可以使用

timepicker類型(timepicker依賴)

一個time輸入類型(可能這是您需要的最佳方式東西很快,沒有任何其他插件依賴)。

time輸入類型的一個簡單的例子可以在本fiddle

EDIT找到

您也可以嘗試通過添加datetime-local輸入類型,例如下面延伸附加輸入類型(只是一個簡單演示)

$.editable.addInputType('datetime', { 
/* Create input element. */ 
element : function(settings, original) { 
    // pattern is fallback for browsers not supporting datetime-local 
    var datetime_local = $('<input id="datetime_" type="datetime-local" pattern="[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}" required />'); 
    $(this).append(datetime_local);   
var hidden = $('<input type="hidden">'); 
$(this).append(hidden); 
return(hidden); 
}, 
submit : function(settings, original) { 
    var value = $('input:#datetime_').val(); 
    $("input", this).val(value); 
} 
}); 

請檢查更新的fiddle也查看更改

+0

HI #Peter Darmis這正是我正在尋找的。然而,與日期小提琴不起作用。編輯的結尾必須有一個值,如2017-12-15 09:15:00你能告訴我如何在小提琴中做到這一點? –

+0

@KeithDKaiser如果您的意思是當您提交表單時日期值未定義,請檢查更新。 –

+0

任何方式使用下拉或其他方法來選擇日期和時間(類似於你在第一個小提琴中做什麼)? –

0

直接從source file可jeditable。看看fie的結尾

if (settings.datepicker) { 
    jQuery.extend(datepicker, settings.datepicker); 
    } 

    input.datepicker(datepicker); 

它實際上在做什麼是將jquery ui datepicker應用到您的輸入元素。

JQuery ui Datepicker沒有能力改變日期時間。 或者,你可以找到另一個支持這個庫。或者你可以在github上申請jeditable developers的功能。

我建議你找到任何其他庫,因爲我懷疑開發者會幫助你,因爲他們工作了六七年。你不應該使用折舊的庫。

相關問題