大家好,所以我有这个更新页面,我需要显示当前在我的数据库中的用户的数据。在这些数据中是用户的生日,所以即时尝试在Form :: input上显示生日,这是一个日期选择器,但生日不知道如何让datepicker从数据库显示用户的生日? 现在我有这个代码
<div class="form-group">
{{ Form::label('date', 'Birthday') }} Current: {{ $sinf->Birthdate }} </br>
{{ Form::input('date', '$sinf->Birthdate', Input::old('date'), ['class'=>'datepicker', 'placeholder' => '$sinf->Birthdate']) }}<span class="errmsg" style="color:red"><i>{{ $errors->first('date', ':message') }}</i></span>
</div>
答案 0 :(得分:3)
您的代码存在一些问题,如下所示:
1。日期输入元素根据W3C HTML5 Recommendation没有占位符属性。
2。您传递给Form::input
方法的顺序和值与API定义的顺序和值不匹配。 Illuminate\Html\FormBuilder::input
方法按以下顺序接受以下参数:类型,名称,值,选项
3。您传递给日期输入的值必须采用ISO 8601格式(即YYYY-MM-DD
),尽管浏览器会使用自己的演示格式,但可能会有所不同从浏览器到浏览器(例如Chrome会根据客户端区域设置显示日期,因此当您以所需格式YYYY-MM-DD
传递日期时,它可能会显示为DD/MM/YYYY
,但是不是问题,因为将传递回服务器的值仍将采用ISO 8601格式)。 最后一点可能不是实际问题,因为您还没有指定$sinf->Birthdate
的值,但值得一提。
因此,根据上面提到的点,您的日期输入代码应如下所示:
{{ Form::input('date', 'birthdate', $sinf->Birthdate, ['class'=>'datepicker']) }}
因此假设$sinf->Birthdate
的值等于2015-02-22
,那么由此生成的HTML将是:
<input class="datepicker" name="birthdate" type="date" value="2015-02-22">
它将在浏览器中正确显示生日值。