簡體   English   中英

MVC Html.HIddenFor值未傳遞給模型

[英]MVC Html.HIddenFor value not being passed to the model

我正在使用JQueryUI Datepicker,這是我在視圖中使用的代碼

@model myprojectName.WebSite.DataModel.AvailableDate

<script>
$(function () {
    $("#datepicker").datepicker();
});


</script>
<h3 class="headerColorWhite">Book a session with Mike</h3>
<p class="mainText">Select a date that you wish to train with Mike</p>

 @using (Html.BeginForm())
{
<div class="editor-field left" id="datepicker">
    @Html.HiddenFor(model => model.DateAvailable, new {@class = "datepicker"})
    @Html.ValidationMessageFor(model => model.DateAvailable)
</div>

<div class="col-md-10 left">
    <input type="submit" value="Search Available Slots" class="btn btn-default left" />
</div>
}

點擊提交\\搜索可用插槽按鈕時,這似乎不會將我選擇的日期發送回模型。

這是將日期傳遞給的模型

public partial class AvailableDate
{
    private DateTime? _DateAvailable;

    [DataType(DataType.Date)]
    [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd-MM-yyyy}")]
    public System.DateTime DateAvailable
    {
        get { return _DateAvailable ?? DateTime.Today; }
        set { _DateAvailable = value; }
    }
}

你能告訴我出錯的地方以及我需要做些什么才能解決這個問題。

---------------編輯顯示獲取和發布方法---------------

// GET: Bookings
    public ActionResult Index()
    {

        return View();
    }
    [HttpPost]
    public ActionResult Index(AvailableDate availableDate)
    {
        return View();
    }

目前,隱藏字段DateAvailable將始終設置為null。 當您從數據選擇器中單擊日期時,它當前不會更新隱藏字段。

所以,而不是

$(function () {
    $("#datepicker").datepicker();
});

嘗試:

$(function() {
    $("#datepicker").datepicker({
        dateFormat: 'dd-mm-yy',
        onSelect: function (dateText, e) {
            $("#DateAvailable").val($(this).val());
        }
    });
});

這將為隱藏字段分配值。 另外,正如我們的轉換中所討論的那樣,日期需要格式化,如上面的dateFormat: 'dd-mm-yy'所定義。

您確定所選日期是否應用於隱藏字段? 也許你應該使用altField

$( "#datepicker" ).datepicker({
  altField: ".datepicker"
});

其中.datepicker將是您為隱藏字段注入的類。 或者更好地使用它的id並應用一種格式:

$( "#datepicker" ).datepicker({
  altField: "#DateAvailable",
  altFormat: "dd-mm-yy" // added for conversion compatibility
});

看到這個小提琴

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM