【问题标题】:Laravel date validation fails with jQuery datepickerjQuery datepicker 的 Laravel 日期验证失败
【发布时间】:2016-01-12 11:27:39
【问题描述】:

在我的刀片文件中,我定义了:-

<div class="createMesh_row date" id="event_date_div">
    <label>Event Date</label>
    {{ Form::text('event_date','',array('id'=>'event_date','readonly', 'class' => '')) }}
    <i class="fa fa-calendar eventdate"></i>
    {{ $errors->first('event_date','<span class="error">:message</span>') }}
</div>

在我的 js 文件中:-

 $( "#event_date,#target_date" ).datepicker({
     changeMonth: true,
     changeYear: true,
     dateFormat: 'mm/dd/yyyy',
     minDate: 0        
  });

我为此定义了规则:-

 $rules=[
            'title'       =>'required',
            'type'        =>'required',
            'privacy'     =>'required',
            'target_date' =>'required|date|date_format:"mm-dd-yyyy"',

  //  tried 'target_date' =>'required|date|date_format:"mm/dd/yyyy"',
  //  tried 'target_date' =>'required|date|date_format:"d/m/Y"',
  //  tried'target_date' =>'required|date_format:d-m-Y', 
  //  not working

            'occasion'    =>'required'
        ];

错误:-

[target_date] => Array
                (
                    [0] => The target date is not a valid date.
                    [1] => The target date does not match the format mm-dd-yyyy.
                )

【问题讨论】:

  • 尝试转储输入以查看日期的外观

标签: jquery laravel jquerydatetimepicker


【解决方案1】:

首先,您应该在验证字段时使用datedate_format,而不是同时使用两者。

其次,mm-dd-yyyy 的正确格式是m-d-Y,所以验证应该是这样的:

'target_date' =>'required|date_format:"m-d-Y"',

【讨论】:

  • 感谢您的回答。我会检查并通知您。
  • 我得到了问题兄弟。为您的回答 +1。
  • 我已经编辑了您的部分答案。对我来说效果很好。
【解决方案2】:

我写的

'target_date' =>'required|date_format:"m/d/Y"',

在 Js 中, 不要定义日期格式。

$("#target_date,#event_date").datepicker({
        changeMonth: true,
        changeYear: true,
        //  dateFormat: 'mm/dd/yy', // Hide this line
        minDate: 0
});

对我来说工作得很好:)

【讨论】:

    【解决方案3】:

    在 JS 中:

    $( "#event_date,#target_date" ).datepicker({
        // changeMonth: true,
        // changeYear: true,
           viewMode: 'years',
           format: 'YYYY/MM/DD',    
    });
    

    在 Laravel 中:

    'target_date' =>'required|date',
    

    【讨论】:

      猜你喜欢
      • 2015-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-12
      • 2018-07-06
      相关资源
      最近更新 更多