ASP.NET核心MVC中的日期问题:当我在输入代码中使用type=month时,无法工作



我正在创建一份月度销售报告。所以在日期输入中,我只需要月份和年份,而不需要日期。我在输入中使用了type month。

这是我的观点:

<div class="form-group">
<label for="Date">Date</label>
<input type="month" class="form-control" name="Date" id="Date" />
</div>

我需要将此日期与我在型号中的日期进行比较

public DateTime Entrydate { get; set; }

在控制器中,用于比较输入日期和输入日期

private IEnumerable<Sale>GetFilteredData(IEnumerable<Sale>  DateTime? Date)
{
if (Date != null || Date != default(DateTime))
{
result = result.Where(a => a.Entrydate >= Date);
}
}

当我在输入中使用type = date时,它起作用,但当我使用month时,它不起作用。为了解决这个问题,我需要做哪些更改?

您可以使用日期选择器仅选择月份和年份。datepicker需要一些像这样的库

<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.bundle.min.js"></script>
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" />
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet" />    
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css" rel="stylesheet" />  

在您可以为输入编写日期选择器之后

<script>
$(function () {
$('#datepicker').datepicker({
format: 'mm/yyyy',
startView: "months",
minViewMode: "months",
language: "tr"
});
});        
</script>

你的输入必须像一样

<div class="form-group">
<div class='input-group date datepicker' id='datepicker'>
<input type='text' class="form-control" asp-for="MyProperty" />
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div>
</div>

模型属性

[DisplayFormat(DataFormatString = "{0:MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime MyProperty { get; set; }

相关内容

  • 没有找到相关文章

最新更新