Проверка Ajax-запроса в laravel

Здесь он запрашивает проверку только для первой таблицы. Я хочу проверить все три таблицы
введите описание изображения здесьУ меня есть форма, которая делает вызов Ajax к контроллеру на основе выбора флажков.

Ajax отображает таблицу, которая разработана в контроллере с проверкой.

когда я выбираю три флажка и нажимаю кнопку отправки, ajax возвращает мне три таблицы. Моя проблема заключается в том, что, когда вы нажимаете кнопку «Отправить» без заполнения таблицы, она запрашивает проверку только для первой таблицы.

Я хочу показать валидацию для всех таблиц, которые выбирает ajax.

моя форма:

{!! Form::open(array('class' => 'form-horizontal', 'id' => 'lawpopupformdata', 'files' => true)) !!}
<div class="modal fade" id="lawpopupdata" tabindex="-1" role="basic" aria-hidden="false">
<div class="modal-dialog modal-dialoglaws">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
<h4 class="modal-title">Add Law(s)</h4>
</div>
<div class="modal-body modal-bodylaws">
<input type="hidden" name="company_id" value="{{$company_master->id}}">
@foreach ($laws as $law)
<?php
$sublaws = DB::table('tbl_law_sub_master')->where('lm_id', $law->id)->select('*')->get(); ?>
<ul style="list-style:none;">
<li>
<input type="checkbox" name="law_type_id[]" id="law_type_id{{ $law->id }}" class="delclass" value="{{ $law->id }}" reldeltype="{{ $law->id }}" />
<strong>{{ $law->lm_id }} ( {{ $law->law_name }} )</strong>
<ul style="list-style:none;">
@foreach ($sublaws as $sublaw)
<li>
<input type="checkbox" name="law_sub_type_id[]" id="law_sub_type_id{{$sublaw->id}}" value="{{$sublaw->id}}" class="delsubclass" reldeltype="{{ $law->id }}" reldelsubtype="{{$sublaw->id}}" />
{{ $sublaw->lms_id }} ( {{ $sublaw->sub_law_name }} )</li>
@endforeach
</ul>
</li>
</ul>
@endforeach </div>
<div class="modal-footer">
<input type="submit" value="Submit" class="btn green">
<input type="button" value="Cancel" class="btn red" data-dismiss="modal" aria-hidden="true">
<input type="reset" value="Clear" class="btn blue">
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
</form>

Аякс код:

$("#lawpopupformdata").submit(function(event){
var data_id = $(this).data('id');
var row_id=$("#row_id").val();
var start_date = $("#company_start_date").val();
event.preventDefault();
var formData = new FormData($(this)[0]);
$.ajax({
url: "{{ URL::to('admin/postlawsdata') }}" + '?start_date=' + start_date,
type: 'POST',
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
dataType: "json",
success: function (returndata) {
var res_sublaw_content=returndata.law_info;
var res_sublaw_content1=returndata.law_info;

var res_validate_laws = returndata.validate_laws;
var res_sub_law_count = returndata.sub_law_count;if(res_sub_law_count==0)
{
bootbox.alert("Please Select Atleast One Law");
return false;
}
else
{
document.getElementById("sublaws_content").innerHTML = "";
$('#sublaws_content').append(res_sublaw_content);
$('#sublaws_content1').append(res_sublaw_content1);
$('#laws_data1').val(res_sub_law_count);
$('.locationparentsd').bind('change', function(event)
{
parent_loc_sd = $(this).val();
var loc_att_law_id = $(this).attr('att_law_id');
var loc_sd_name = '.dynamiclocationparentsd'+loc_att_law_id;
$(loc_sd_name).val(parent_loc_sd);
});

$('.date-picker').datepicker({
todayBtn: "linked",
autoclose: true,
format: 'dd-mm-yyyy'
});
$('#lawpopupdata').modal('hide');
$('#save').show();
return false;
}
}
});

моя функция контроллера:

 public function postlawsdata()
{
$lawdata=Input::get('law_type_id');
$sublawdata=Input::get('law_sub_type_id');
$start_date = Input::get('start_date');
//        $law_date=Input::get('company_start_date');
$res_div='';
$sub_law_count=count($sublawdata);
$validate_laws='';
if(count($sublawdata)>0)
{

for($i=0;$i<count($lawdata);$i++)
{
$law_details = DB::table('tbl_law_master')->where('id', $lawdata[$i])->select('tbl_law_master.id as law_id', 'tbl_law_master.lm_id', 'tbl_law_master.law_name')->first();

$sublaw_details = DB::table('tbl_law_sub_master')
->where('tbl_law_sub_master.lm_id', $lawdata[$i])
->whereNull('tbl_law_sub_master.deleted_at')
->select('tbl_law_sub_master.id as sublaw_id', 'tbl_law_sub_master.sub_law_name','tbl_law_sub_master.lms_id')->get();if(count($sublaw_details)>0)
{
$res_div.='<table width="100%" border="0"  class="table table-striped table-bordered table-hover">';
$res_div.='<tr>
<td colspan="2" rowspan="2">
<strong>'.$law_details->lm_id.' ('.$law_details->law_name.')</strong>
</td>
<td >
<span class="required" aria-required="true">* </span><input type="text" value="'.$start_date.'" placeholder="DD-MM-YYYY (Start Date)" name="law_start_date[]" id="law_start_date" att_law_id="'.$lawdata[$i].'"  class="date-picker required locationformstyle locationparentsd dynamiclocationparentsd'.$lawdata[$i].'">
</td></tr><tr><td>
<span class="required" aria-required="true">* </span><input type="text" placeholder="Law Registration No." name="law_reg_no" id="law_reg_no" class="locationformstyle required">

</td>
</tr>';

foreach($sublaw_details as $sublawdetails)
{
if (in_array($sublawdetails->sublaw_id, $sublawdata))
{
$res_div.='<tr>
<td width="220">Start Date: <input type="text" name="sub_law_start_date[]" placeholder="DD-MM-YYYY" onfocus="this.blur()" class="locationformstyle date-picker dynamiclocationparentsd'.$lawdata[$i].'" att_law_id="'.$lawdata[$i].'"> </td>
<td width="220">End Date: <input type="text"  name="sub_law_end_date[]" placeholder="DD-MM-YYYY" onfocus="this.blur()" class="locationformstyle date-picker"></td>
<td align="left"><strong>'.$sublawdetails->lms_id.' ('.$sublawdetails->sub_law_name.')</strong>
<input type="hidden" class="locationformstyle" name="company_sub_laws[]" value="'.$sublawdetails->sublaw_id.'">
</td>
</tr>
';
}
}
$res_div.='</table>';
}
}
}
else
{
$validate_laws='Please Select Atleast One Law';
}
$data=array(
'law_info'=>$res_div,
'validate_laws'=>$validate_laws,
'sub_law_count'=>$sub_law_count
);
return json_encode($data);
}

-1

Решение

 public function postlawsdata()

измените это на

 public function postlawsdata(Request $request)

а затем добавить это

$this->validate($request,[
//your validation
]);
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector