1

初めての ASP.NET MVC Knockout MVC を作成します。

3つの日付を設定するモデルを追加しました。コントローラーは 3 つの日付を割り当てます。次に、ビューを使用して画面に表示されます。

<p>First Date: @ko.Html.TextBox(m => m.FirstDate)</p>
<p>Second Date: @ko.Html.TextBox(m => m.SecondDate)</p>
<p>Third Date: @ko.Html.TextBox(m => m.ThirdDate)</p>

@ko.Apply(Model)

@ko.Apply(Model) は、3 つの日付を表示する主要部分です。ボタンがクリックされたときに3つの日付のみを表示しようとしているので、フォーム内にコードを配置してボタンを使用しました:

<form id="displaydates" method="post" >
<p>First Date: @ko.Html.TextBox(m => m.FirstDate)</p>
<p>Second Date: @ko.Html.TextBox(m => m.SecondDate)</p>
<p>Third Date: @ko.Html.TextBox(m => m.ThirdDate)</p>

<input id="btn" type="button" value="click" @ko.Apply(Model) />
</form>

問題は、テキスト ボックスに日付が表示されなくなり、ボタンの横に表示されることです。復習: ボタンがクリックされたときに各日付をテキスト ボックス内に表示したいと思います (ページが読み込まれたときにボタンの横に表示されるのではなく、これは atm で発生します)。

何か案は? ここに画像の説明を入力

更新ボタンを追加しようとしましたが、ボタンをクリックしても日付がまったく表示されません。

意見:

@using PerpetuumSoft.Knockout
@model KnockOutMVC3Dates.Models.DatesModel       
@{
  var ko = Html.CreateKnockoutContext();
}

<p>First Date: @ko.Html.TextBox(m => m.FirstDate)</p>
<p>Second Date: @ko.Html.TextBox(m => m.SecondDate)</p>
<p>Third Date: @ko.Html.TextBox(m => m.ThirdDate)</p>

@ko.Html.Button("Display","Index","Dates",null,null)

日付コントローラー:

   public ActionResult Index()
        {
            return View
                (   new DatesModel
                    {
                        FirstDate = DateTime.Now,

                        SecondDate = DateTime.Now.AddYears(1).AddMonths(1),
                        ThirdDate = DateTime.Now.AddYears(2).AddMonths(2)
                    }
                );

        }

モデル:

  public class DatesModel
{
    public DateTime FirstDate { get; set; }
    public DateTime SecondDate { get; set; }
    public DateTime ThirdDate { get; set; }
}

どんな助けやアイデアも歓迎??

4

2 に答える 2