簡體   English   中英

Rails date_field 具有最小值和最大值但沒有默認值

[英]Rails date_field with min and max but no default value

我想要一個具有最小和最大限制的表單 date_field,但沒有默認值。 目前,當我設置最小值和最大值時,它們會導致 date_field 的 yyyy 受到約束並在頁面加載時設置為默認值。

這是導軌視圖:

<%= f.date_field("start_date", min: @min_days, max: @today_date) %>

這是生成的html:

<input min="2022-06-19" max="2022-07-20" type="date" name="start_date" id="start_date">

由於最小值和最大值都在同一年內,因此 date_field 表單加載時填充了年份“2022”且不可編輯:

在此處輸入圖像描述

我無法找到一種方法讓 date_field 表單加載所有空白默認值,同時在用戶使用日期選擇器日歷小部件時仍將用戶限制在提供的最小和最大窗口中:

在此處輸入圖像描述

這種期望的 UI 行為的原因是用戶可以更好地理解 date_field 是一個空白和可選的表單輸入。

謝謝

你不能改變它,它與 Rails 無關,它是底層HTML 規范(和瀏覽器實現)的一部分。

唯一的解決方法是使用您自己的日期小部件。

FWIW,根據我的經驗,只要您在可選字段和必填字段之間有明顯的視覺差異,用戶通常不會對此感到困惑。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM