Maison > Questions et réponses > le corps du texte
J'essaie de limiter mon attribut date input max à fluide afin qu'il change chaque année. Pas codé en dur comme maintenant.
Maintenant : <input type="date" @bind-value="product.DateRetired" min="1950-01-01" max="2024-12-31" />
J'essaie de le décomposer en :
Essayez 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; }
Essayez 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; }
Essayez 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"); }
Chaque fois que j'essaye sans succès, je peux sélectionner une date en dehors de cette plage. Peut-être quelque chose à voir avec le changement de format ? Que dois-je faire?
P粉0051054432024-03-31 14:27:20
Le tout peut être condensé en 1 ligne de code :
public string MaxRetiredDate = $"{(DateTime.Today.AddYears(1)).Year}-12-31";