私はdatetimepickerを使用しており、コントローラーからの特定の日付とその前のすべての日付を無効にしたいと考えています。
では、コントローラーから datetimepicker に日付を渡すにはどうすればよいでしょうか。
これが私が意味することです:
MRecord firstMR = db.MRecords.Where(x => x.AID == dSum.AircraftID).OrderBy(x => x.DateEntered).FirstOrDefault();
<script type="text/javascript">
$(function () {
$('#datetimepicker5').datetimepicker({
disabledDates: [
// how do I disable all dates before and including firstMR.DateEntered?
]
});
});
</script>
ビューでこれをすべて行うことは可能ですか?私はかみそりを使用しています。
どんな助けでも大歓迎です。
アップデート
私はRazor Viewでこれを試しています:
@{
ViewBag.Title = "Create";
var firstMR = new ALogSummary.Models.MRecord();
using (var db = new AviationLogSummary.Models.ALogsEntities())
{
firstMR = db.MRecords.Where(x => x.AID == Model.AID).OrderBy(x => x.DateEntered).FirstOrDefault();
}
}
<div id="datetimepicker2" class="input-group date">
@Html.EditorFor(model => model.Day, new { htmlAttributes = new { id = "Day", @class = "form-control" } })
@Html.ValidationMessageFor(model => model.Day, "", new { @class = "text-danger" })
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div>
<script type="text/javascript">
$(function () {
$('#datetimepicker2').datetimepicker({
format: 'MM/DD/YYYY HH:mm',
minDate: [@firstMR.DateEntered.Date]
});
});
</script>
デバッグ時に次のエラーが表示されます。
http://localhost:xxxxx/DSummaries/Create/7の 160 行目、49 列目にある JavaScript の重大なエラー\n\nSCRIPT1007: 予期される ']'
更新 2 :
<div id="datetimepicker2" class="input-group date" >
@Html.EditorFor(model => model.Day, new { htmlAttributes = new { id = "Day", @class = "form-control", data_mindate = firstMR.DateEntered.Date } })
@Html.ValidationMessageFor(model => model.Day, "", new { @class = "text-danger" })
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div>
脚本:
これは独自のJSファイルにあります
$(function () {
$('#datetimepicker2').datetimepicker({
format: 'MM/DD/YYYY HH:mm',
minDate: $(this).data('mindate')
});
});
HTML 出力は次のとおりです。
<input class="form-control text-box single-line valid" id="Day" type="datetime" data-val-required="This field is required!" data-val="true" data-mindate="05/28/2016 00:00:00" data-val-date="This field: must be a date." value="06/28/2016 09:07"></input>
そのため、正しい心構えが設定されていますが、スクリプトが機能していません。