首頁  >  問答  >  主體

取得輸入類型為日期的最大屬性

我試圖將我的日期輸入最大屬性限制為流動的,以便它每年都會發生變化。不像現在那樣硬編碼。

現在:<input type="date" @bind-value="product.DateRetired" min="1950-01-01" max="2024-12-31" />

我嘗試將其分解為:

  1. 取得今天的日期 (16/02/2023)
  2. 在該日期基礎上新增 1 年(2024 年 2 月 16 日)
  3. 返回新年的最後日期 (31/12/2024)
  4. 更改 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粉676588738P粉676588738202 天前302

全部回覆(1)我來回復

  • P粉005105443

    P粉0051054432024-03-31 14:27:20

    整件事情可以壓縮為 1 行程式碼:

    public string MaxRetiredDate = $"{(DateTime.Today.AddYears(1)).Year}-12-31";
    
    

    回覆
    0
  • 取消回覆