在DateBox Jquery Mobile

时间:2015-11-02 12:18:35

标签: javascript jquery jquery-mobile datepicker datebox

我需要动态地将日期和时间填充到JQuery DataBox输入字段。我不想这样做,但它会在输入字段中填充当前日期,而不管我传递的数据。

以下是我在界面中动态克隆的日期选择器。

HTML: -

<input class="time-input day-time-picker day-time-picker-inline-input"  type="text" data-role="datebox" data-options='{"mode":"datebox", "useFocus": true}' style="width:8em" />

使用Javascript: -

var datePicker = $("#date-time-picker-template-container .date-time-picker-template").clone();

类似地,我创建了一个时间选择器,并按上面的方式克隆,

Html: -

var timePicker = $("#time-picker-template-container .time-picker-template").clone();

Javascript: -

<input class="time-input day-time-picker day-time-picker-inline-input" type="text" data-role="datebox" data-options='{"mode":"timebox", "useFocus": true}' />

插入日期

$(".time-input",  datePicker).datebox();

$(".time-input",  datePicker).datebox("refresh");

$(".time-input",  datePicker).datebox('setTheDate', dynamicDate);

插入时间

$(".time-input",  dayTimePicker).datebox();

 $(".time-input",  dayTimePicker).datebox("refresh");

 $(".time-input",  dayTimePicker).val('datebox', {'method':'set', 'value':dynamicTime});

我想根据我得到的响应动态地设置这些DateBox输入字段的日期和时间。

是否有任何控件可以使用DateBox在单个控件中获取日期和时间?

感谢。

2 个答案:

答案 0 :(得分:0)

克隆模板,将它们添加到容器DOM元素,然后告诉元素enhanceWithin()。这将创建数据库小部件,然后使用setTheDate方法设置日期和时间:

$("#btnAdd").on("click", function(){
    var dynamicDate = new Date(2014,3,22,10,11,0,0);

    var datePicker = $("#templates .date-time-picker-template").clone();
    var dayTimePicker = $("#templates .time-picker-template").clone();
    $("#time-picker-block").append(datePicker).append(dayTimePicker).enhanceWithin(); 

    $(".date-input",  datePicker).datebox('setTheDate', dynamicDate);
    $(".time-input",  dayTimePicker).datebox('setTheDate', dynamicDate);
});
  

<强> DEMO

答案 1 :(得分:0)

我不确定我是否遵循您要完成的任务,但是,有一种模式允许同时进行日期和时间操作 - 幻灯片。

您需要设置(至少)以下选项:

{
  mode = "slidebox",
  overrideSlideFieldOrder = ["y","m","d","h","i"],
  overrideDateFormat = "%Y-%m-%d %k:%M
}

对于它的价值,flipbox可能可能被改变以适用于两者,但它是非平凡的。 datebox可能已经可以工作了(我从未尝试过),但是你需要对CSS进行大量修改 - 至少首先要让控件变得更好。