Php 在laravel 4.2验证中允许相同的开始和结束日期
所以我有这个功能,用户需要输入某个事件的开始日期和结束日期。所以我所做的是在我的视图中添加了一个日期选择器,在我的控制器中,我唯一能做的就是允许结束日期在开始日期之后。但我也应该能够允许相同的开始日期和结束日期,例如,用户选择了今天的开始日期,我也应该能够允许结束日期在今天。基本上,结束日期可以在开始日期之后,这里是控制器中的验证代码Php 在laravel 4.2验证中允许相同的开始和结束日期,php,laravel,laravel-4,Php,Laravel,Laravel 4,所以我有这个功能,用户需要输入某个事件的开始日期和结束日期。所以我所做的是在我的视图中添加了一个日期选择器,在我的控制器中,我唯一能做的就是允许结束日期在开始日期之后。但我也应该能够允许相同的开始日期和结束日期,例如,用户选择了今天的开始日期,我也应该能够允许结束日期在今天。基本上,结束日期可以在开始日期之后,这里是控制器中的验证代码 $rules = array( 'eventName' => 'required', 'users' =
$rules = array(
'eventName' => 'required',
'users' => 'required',
'evStart' => 'required',
'evEnd' => 'required|after:evStart',
);
这是我的视图代码
<div class="input-field col s10 offset-s1" style="margin-top:40px;">
{{ Form::label('date', 'Event Start *') }}
{{ Form::input('date', 'evStart', Input::old('evStart'), ['class'=>'datepicker', 'placeholder' => 'Date']) }}
</div>
<div class="input-field col s10 offset-s1">
{{ Form::label('date', 'Event End *') }}
{{ Form::input('date', 'evEnd', Input::old('evEnd'), ['class'=>'datepicker', 'placeholder' => 'Date']) }}
</div>
{{Form::label('date','Event Start*')}
{{Form::input('date','evStart',input::old('evStart'),['class'=>'datepicker','placeholder'=>'date'])}
{{Form::label('date','Event End*')}
{{Form::input('date','evEnd',input::old('evEnd'),['class'=>'datepicker','placeholder'=>'date'])}
关于如何改进代码有什么想法吗?非常感谢
<script type="text/javascript">
$( function() {
//----------date format-----------------
$("#startdate").datepicker({
dateFormat: "mm/dd/yy",
onSelect: function (date) {
var date2 = $('#startdate').datepicker('getDate');
date2.setDate(date2.getDate());
$('#enddate').datepicker('option', 'minDate', date2);
}
});
$('#enddate').datepicker({
dateFormat: "mm/dd/yy",
onClose: function () {
var dt1 = $('#startdate').datepicker('getDate');
console.log(dt1);
var dt2 = $('#enddate').datepicker('getDate');
if (dt2 <= dt1) {
var minDate = $('#enddate').datepicker('option', 'minDate');
$('#enddate').datepicker('setDate', minDate);
}
}
});
} );
</script>
$(函数(){
//----------日期格式-----------------
$(“#开始日期”)。日期选择器({
日期格式:“mm/dd/yy”,
onSelect:功能(日期){
var date2=$('#startdate')。日期选择器('getDate');
date2.setDate(date2.getDate());
$('enddate')。日期选择器('option','minDate',date2);
}
});
$('#enddate')。日期选择器({
日期格式:“mm/dd/yy”,
onClose:function(){
var dt1=$('#startdate').datepicker('getDate');
控制台日志(dt1);
var dt2=$('#enddate')。日期选择器('getDate');
如果(dt2<代码>
$(函数(){
//----------日期格式-----------------
$(“#开始日期”)。日期选择器({
日期格式:“mm/dd/yy”,
onSelect:功能(日期){
var date2=$('#startdate')。日期选择器('getDate');
date2.setDate(date2.getDate());
$('enddate')。日期选择器('option','minDate',date2);
}
});
$('#enddate')。日期选择器({
日期格式:“mm/dd/yy”,
onClose:function(){
var dt1=$('#startdate').datepicker('getDate');
控制台日志(dt1);
var dt2=$('#enddate')。日期选择器('getDate');
如果(dt2制定了自己的验证规则,日期:
Validator::extend('after_equal', function($attribute, $value, $parameters, $validator)
{
return strtotime($validator->getData()['evStart']) <= strtotime($value);
});
将此代码放在所需位置。如果要验证空字段,请使用Validator::extendImplicit。为日期制定自己的验证规则:
Validator::extend('after_equal', function($attribute, $value, $parameters, $validator)
{
return strtotime($validator->getData()['evStart']) <= strtotime($value);
});
把这段代码放在你想要的地方。如果你想验证空字段,请使用Validator::extendImplicit。ru使用$(“#startdate”).datepicker({});在jshi中,所以我刚刚将datepicker
类添加到我的表单::input
中,请看我添加了一个答案…检查它是否可以使用$(“#startdate”).datepicker({});在jshi中,我刚刚将datepicker
类添加到我的表单::input
查看我添加了一个答案…检查它是否工作StartDate,enddate是您的输入字段id,别忘了更改它的StartDate,enddate是您的输入字段id,别忘了更改它