2017-11-11 37 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的功能。

我建议你找到任何其他库,因为我怀疑开发者会帮助你,因为他们工作了六七年。你不应该使用折旧的库。

相关问题