0

我有这样的看法:

$('#datepicker').datepicker({
    onSelect: function (date, inst){
        $(this).parent('form').submit();
    }
});

<form method="post" name="datepickerForm">
    <div id="datepicker"></div>
</form>
Date Posted: @ViewBag.PostedDate

在控制器中,我有:

public ActionResult Index(int? datepickerForm) {
    if(datepickerForm.HasValue) // this is always null
        ViewBag.PostedDate = datepickerForm.Value;
}
4

4 回答 4

0

将 更改divinput.

<input id="datepicker" name="date" />
于 2012-12-04T17:27:01.320 回答
0

查看以下代码

$('#datepicker').datepicker({
onSelect: function (date, inst){
    $(this).parent('form').submit();
} 
 });

 <form method="post" name="datepickerForm">
 <input id="datepicker"/>
  </form>

在控制器中有以下代码

public ActionResult Index(int? datepicker) {
//datepicker id of input element
    ViewBag.PostedDate = datepicker;
}

谢谢

于 2012-12-04T17:28:01.133 回答
0

采用

<input id="datepicker" name="date" />

代替

<div id="datepicker"></div>

阅读这篇文章,这篇文章演示了使用 datepicker 并将数据发送/发布回控制器的正确方法。

于 2012-12-04T17:53:33.227 回答
0

我最终同时使用了div显示和input textbox发布日期。

$('#datepicker').datepicker({
    onSelect: function (date, inst){
        $('#datepickerTxt').val(date);
        $(this).parent('form').submit();
    }
});

<form method="post" name="datepickerForm">
    <div id="datepicker"></div>
    <input type="text" id="datepickerTxt" name="datepickerTxt" />
</form>
Date Posted: @ViewBag.PostedDate

在控制器中,我有:

public ActionResult Index(string datepickerTxt) {
    if(!string.IsNullOrEmpty(datepickerTxt)
        ViewBag.PostedDate = datepickerTxt;
}
于 2012-12-04T18:44:57.593 回答