如何在我的“timepicker”中添加Seconds?

时间:2013-06-07 17:13:31

标签: jquery html jquery-ui razor jquery-ui-datepicker

我正在以这种方式使用jQuery-UI datepicker:

var datepickerOpts = {
    changeMonth: true,
    changeYear: true,
    showButtonPanel: true,
    showWeek: true,
    onClose: function(dateText, inst) {
                        if (($("#BeginTime").val()).length == 0) {
                            $("#BeginTime").timeEntry("setTime", new Date(0, 0, 0, 0, 0, 0));
                        }
                        $("#BeginTime").focus();
                    }
}

$("#BeginDate").datepicker(datepickerOpts);

相关的[cs] html是:

<tr id="trBeginDate">
    <td>
    </td>
    <td>
        @Html.LabelFor(m => m.BeginDate)
    </td>
    <td style="padding-right: 20px;">
        @Html.TextBoxFor(m => m.BeginDate, new {alt = "date-us", style = "width: 109px;"})
    </td>
    <td>
        @Html.LabelFor(m => m.BeginTime)
    </td>
    <td style="padding-right: 20px;">
        @Html.TextBoxFor(m => m.BeginTime, new {style = "width: 109px;"})
    </td>
</tr>

我希望在BeginTime文本框中显示为默认值为“00:00:00”,而不仅仅是“00:00”:

enter image description here

实际上,对于默认的午夜开始时间,“00:00”可能没问题,但是我需要默认的结束时间是“23:59:59”而不是现在(“23:59”),因为这种方式几乎整整一分钟都可能丢失(从“23:59:01”到“23:59:59”)。因此,“00:00”应该是“00:00:00”,以便与“23:59:59”具有一致的格式。)

无论如何,我试过这个,但它根本不起作用(没有添加到BeginTime文本框中):

. . .
onClose: function(dateText, inst) {
                        if (($("#BeginTime").val()).length == 0) {
                            $("#BeginTime").text("00:00:00");
. . .

也没有:

. . .
onClose: function(dateText, inst) {
                        if (($("#BeginTime").val()).length == 0) {
                            $("#BeginTime").text.val("00:00:00");
. . .

那么如何将BeginTime值设置为“00:00:00”?

2 个答案:

答案 0 :(得分:2)

看看$ .timeEntry()documentation,在'格式'标签下是如何设置不同的默认格式。根据您的other question,您可以设置秒数和24小时制:

// Start Date / Time
var beginDatepickerOpts = {
    ...
}
$('#BeginTime').timeEntry({
    showSeconds: true,
    show24Hours: true
});
$("#BeginDate").datepicker(beginDatepickerOpts);

// End Date / Time
var endDatepickerOpts = {
    ...
}
$('#EndTime').timeEntry({
    showSeconds: true,
    show24Hours: true
});
$("#EndDate").datepicker(endDatepickerOpts);

示例

JSFiddle示例here

答案 1 :(得分:1)