我試圖將我的日期輸入最大屬性限制為流動的,以便它每年都會發生變化。不像現在那樣硬編碼。
現在:<input type="date" @bind-value="product.DateRetired" min="1950-01-01" max="2024-12-31" />
我嘗試將其分解為:
嘗試1:
<input type="date" @bind-value="product.DateRetired" min="1950-01-01" max="@GetNextYear-12-31" /> private int GetNextYear() { DateTime thisyearaddone = DateTime.Today.AddYears(1); int nextyear = thisyearaddone.Year; return nextyear; }
嘗試2:
<input type="date" @bind-value="product.DateRetired" min="1950-01-01" max="@GetNextYearDate" /> private DateTime GetNextYear() { DateTime thisyearaddone = DateTime.Today.AddYears(1); int nextyear = thisyearaddone.Year; DateTime maxretireddate = new DateTime(nextyear, 12, 31); return maxretireddate; }
嘗試3:
public string MaxRetiredDate; <input type="date" @bind-value="product.DateRetired" min="1950-01-01" max="@MaxRetiredDate" onclick="@GetMaxRetiredDate" /> private void GetMaxRetiredDate() { DateTime NextYearDate = DateTime.Today.AddYears(1); int NextYearInt = NextYearDate.Year; DateTime MaxRetiredDate = new DateTime(NextYearInt, 12, 31); MaxRetiredDate.ToString("yyyy-mm-dd"); }
每次嘗試都不成功,我可以選擇此範圍之外的日期。也許與更改格式有關?我該怎麼做?
P粉0051054432024-03-31 14:27:20
整件事情可以壓縮為 1 行程式碼:
public string MaxRetiredDate = $"{(DateTime.Today.AddYears(1)).Year}-12-31";