日期选择器在控制器处返回错误的日期格式(mm/dd/yyyy)

本文关键字:日期 mm dd yyyy 格式 选择器 控制器 返回 错误 | 更新日期: 2023-09-27 18:28:56

在mvc应用程序中,我使用了日期选择器,并有代码

 $("#StartDate").datepicker({
            changeMonth: true,
            changeYear: true,
            dateFormat: 'dd/mm/yy',
            dateonly: true,
        });
 $("#StartDate").datepicker('option', 'dateFormat', 'dd/mm/yy');

点击事件

function SearchFine() {
        var StartDate = $("#StartDate").val();
        var EndDate = $("#EndDate").val();
        var pathName = window.location.pathname;
        var virtualdir = pathName.split('/');
        var directory = "/" + virtualdir[1] + "/ManageLibrary/ManageReports/FineCollectionsReportByDate?StartDate=" + StartDate + "&&EndDate=" + EndDate;
        location.href = directory;
    }

但是我正在获取mm/dd/yyyy格式的

谢谢。

日期选择器在控制器处返回错误的日期格式(mm/dd/yyyy)

您的问题可能的解决方案是:

  • 通过使用例如Firebug验证是否向服务器发送了正确的值
  • 你在web.config中设置了正确的本地化吗
  • 请注意,ASPMVC在执行GET请求时使用InvariantUICulture,因此2010年3月11日将变为11月3日。您可以通过发送类似2010年12月31日的日期来测试这一点,DateTime将等于default(DateTime),因为它无法解析为mm/dd/yyyy。对于POST请求,使用当前线程的本地化来解析日期字符串。
    • 解决方案:将日期作为字符串发送,并在ActionResult中解析为DateTime