ユーザーが[Order]ボタンを押すたびにモーダルダイアログで実際の時間を取得しようとしています。ASP.NET MVC5 Razor Refreshモーダルダイアログ
<a class="btn btn-primary" data-toggle="modal" data-target="#OrderModal">@MEDONET.Language.Doctor.Texts.Order</a>
彼はモーダルのdiv OrderModalに
だからアクションが実際にすべての時間を実行しているとCreateOrderForm.cshtmlを呼び出しているアクションpublic ActionResult CreateOrderForm(CreateOrderVM createOrderVM)
{
createOrderVM.Minute = DateTime.Now.Minute.ToString().PadLeft(2, '0');
return View("CreateOrderForm", createOrderVM);
}
をCreateOrderForm呼び出し
<div id="OrderModal" class="modal fade" role="dialog">
@Html.Action("CreateOrderForm", Model.CreateOrderVM)
</div>
これを行うので、毎回ファイル
@{
Layout = null;
}
@model MEDONET.Models.CreateOrderVM
<div class="modal-dialog modal-sm">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title text-center">Order To Line</h4>
</div>
<div class="modal-body">
@using (Html.BeginForm("CreateOrder", "Doctors", FormMethod.Post))
{
@Html.AntiForgeryToken()
@Html.HiddenFor(m => m.DoctorId)
<div class="row text-center">
<p>Date & Time</p>
@Html.Label("Year")
@Html.EditorFor(model => model.Year, new { htmlAttributes = new { @class = "form-control", @Value = DateTime.Now.Year } })<br />
@Html.Label("Month")
@Html.EditorFor(model => model.Month, new { htmlAttributes = new { @class = "form-control", @Value = DateTime.Now.Month } })<br />
@Html.Label("Day")
@Html.EditorFor(model => model.Day, new { htmlAttributes = new { @class = "form-control", @Value = DateTime.Now.Day } })<br />
@Html.Label("Hour")
@Html.EditorFor(model => model.Hour, new { htmlAttributes = new { @class = "form-control", @Value = DateTime.Now.Hour } })<br />
@Html.Label("Minute")
@Html.EditorFor(model => model.Minute, new { htmlAttributes = new { @class = "form-control" } })<br />
@if (this.User.IsInRole("Registrator"))
{
@Html.EditorFor(model => model.PhoneNumber, new { htmlAttributes = new { @class = "form-control" } })<br />
}
<button type="submit" class="btn btn-default">Submit</button>
</div>
}
</div>
<div class="modal-footer">
</div>
</div>
BUT!ポップアップフィールドは、親ページの読み込み中に最初に入力されたままになります。
[注文]ボタンを押すたびにユーザーに新しい時間を与える方法を教えてください。
ボタンをクリックするたびにそのメソッドを呼び出すコードはどこですか? ( '@ Html.Action(" CreateOrderForm "、Model.CreateOrderVM)'はページを初めてレンダリングしたときに呼び出すだけです) –
そして、 'HtmlHelper'メソッドを使用する際には、バインディングするプロパティの値を設定します。 –
また、 '[HttpGet]'と '[HttpPost]'で修飾されたメソッドがあるはずですか? –