Saya cuba mengehadkan atribut maks input tarikh saya kepada cecair supaya ia berubah setiap tahun. Tidak berkod keras seperti sekarang.
Sekarang: <input type="date" @bind-value="product.DateRetired" min="1950-01-01" max="2024-12-31" />
Saya cuba pecahkan kepada:
Cuba 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; }
Cuba 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; }
Cuba 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"); }
Setiap kali saya mencuba tetapi tidak berjaya, saya boleh memilih tarikh di luar julat ini. Mungkin ada kaitan dengan menukar format? apa patut saya buat?
Semuanya boleh dipekatkan kepada 1 baris kod: