【问题标题】:How to display datetime in dd/MMMM/yyyy format in Html.DropDownList?如何在 Html.DropDownList 中以 dd/MMMM/yyyy 格式显示日期时间?
【发布时间】:2018-11-27 00:32:41
【问题描述】:

这是我的看法:

我希望它以dd/MMMM/yyyy 格式显示,而不是那样显示。

我的代码:

@Html.DropDownList("SelectedDate",(SelectList)ViewBag.AptDates,new { @class = "form-control 0:dd/MMMM/yyyy" })

为什么格式没有改变? DropDownList 由数据库中的数据填充。

谢谢

【问题讨论】:

  • 看来 AptDates 是在您的代码中的其他地方创建的 SelectList。为什么不只是在创建 SelectList 时对其进行格式化?
  • 是的,这行得通。这样轻松修复。谢谢!!
  • 太棒了。我将继续为该主题的未来访问者发布该建议的答案。

标签: .net datetime model-view-controller drop-down-menu


【解决方案1】:

查看您的代码,AptDates 似乎已经是在您的代码其他地方生成的SelectList。这很重要,因为SelectList 类已经为您提供了一种机制来指定显示文本和值。

我建议简单地修改用于生成SelectList 的逻辑,以您希望在DropDownList 中显示的格式输出显示文本。这将为您节省一些时间并在以后减少麻烦,而不必为每个 DropDownList 实现指定自定义格式。

【讨论】:

    【解决方案2】:

    已解决:更改为具有填充 SelectList 背后逻辑的方法:

    foreach(var date in AvailableDates)
            {
                Dates.Add(date.Schedual.ToString("dd/MMMM/yyyy hh:mm tt"),date.Appt_Id);
            }
            // selectlist => list,value,id
            ViewBag.AptDates = new SelectList(Dates);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-04
      • 2016-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-23
      相关资源
      最近更新 更多