Laravel Collective如何为time输入框设置最大值?
解决Laravel Collective中time输入框设置max值的问题
嘿,我来帮你搞定这个问题!你当前的写法之所以不生效,是因为搞错了Form::time()方法的参数顺序哦。
Laravel Collective的Form::time()方法参数规则是这样的:
- 第一个参数:输入框的name属性值
- 第二个参数:输入框的默认值(可以传
null表示没有默认值) - 第三个参数:包含HTML属性的关联数组(比如
max、min、class这些都要放在这里)
你之前把max="04:00"直接放在第二个参数的位置,系统会把它当成输入框的默认值,而不是HTML属性,所以自然不会生效。
正确的写法示例
- 不需要默认值,仅设置max限制:
{!! Form::time('tiempo[]', null, ['max' => '04:00']) !!}
- 需要设置默认值同时添加max限制:
{!! Form::time('tiempo[]', '00:00', ['max' => '04:00']) !!}
另外要注意,max属性的格式必须符合HTML规范,得是24小时制的HH:MM或HH:MM:SS格式,这样浏览器才能正确识别并限制用户输入的时间范围。
内容的提问来源于stack exchange,提问作者Lucas Tomic




