私はこのように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」です。
実際には、「00:00」はおそらくデフォルトの開始時刻の真夜中で問題ありませんが、デフォルトの終了時刻を現在の時刻 (「23:59」) ではなく「23:59:59」にする必要があります。 1 分全体が失われる可能性があります (「23:59:01」から「23:59:59」まで)。したがって、「00:00」は「23:59:59」と一貫した形式にするために「00:00:00」にする必要があります)。
とにかく、私はこれを試しましたが、まったく機能しません (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" に設定するにはどうすればよいでしょうか?