在数据库Laravel 4.2中设置Form :: input里面的datepicker值

时间:2016-02-22 13:36:34

标签: laravel laravel-4 datepicker

大家好,所以我有这个更新页面,我需要显示当前在我的数据库中的用户的数据。在这些数据中是用户的生日,所以即时尝试在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>

1 个答案:

答案 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">

它将在浏览器中正确显示生日值。