register.blade.php中有两个选择选项:
如果有任何人单击课程名称的选项 B.E./B.TECH。或 DIPLOMA 。然后根据选择的课程名称选择选项,结果将显示在分支名称中。一切都很好。
但是此处文本字段名称是必填字段,并且在控制器中设置了验证。现在,如果我没有填写姓名,而是先从选项中选择DIPLOMA,那么结果将显示在第二个选项字段中。我从结果中选择任何选项,然后提交表格。然后,由于需要 Name ,表单将在register.blade.php上重定向。并选择隐藏的选项。
我要在提交表单后,如果在同一页面上进行重定向,则应该在分支名称字段中显示选定的选项,如果已选择。
register.blade.php
<form action="route('register')" method="post">
<div class="form-group col-md-6 col-sm-6">
<label for="name">Name* </label>
<input type="text" class="form-control input-sm required" id="alumni_name" name="alumni_name" placeholder="" value="{{ old('alumni_name') }}">
<span style="color: red;">{{ $errors->first('alumni_name',':message') }}</span>
</div>
<div class = "form-group col-md-6 col-sm-6">
<label for="years">Name of Course*</label>
<select class="form-control input-sm required" id="courses_name" name="alumni_course">
<option value="">-- Select Any one --</option>
@foreach($coursename as $coursenames)
<option value="{{ $coursenames->id.','.$coursenames->coursename }}" {{ old('alumni_course') == $coursenames->id.','.$coursenames->coursename ? 'selected' : '' }} >{{ $coursenames->coursename }}</option>
@endforeach
</select>
<span style="color: red;">{{ $errors->first('alumni_course',':message') }}</span>
</div>
<div class = "form-group col-md-6 col-sm-6" id="dvPassport" style="display:none">
<label for="years">Name of Branch*</label>
<select class="form-control input-sm required" id="branch_name" name="alumni_branch">
@include('auth.branchfind')
</select>
</div>
<input type="submit" value="SAVE">
</form>
同一页面上的AJAX:
<script type="text/javascript">
$(document).ready(function(){
$("#courses_name").change(function(){
var courses_name1 = $("#courses_name").val();
var courses_name2 = courses_name1.split(",");
var id = courses_name2[0];
var courses_name2 = courses_name2[1];
if(courses_name2 == 'B.E./B.TECH.' || courses_name2 == 'DIPLOMA')
{
$("#dvPassport").show();
$.ajax({
type: "GET",
url: "{{url("findbranch")}}",
data: {'id': id},
}).done(function(data){
$("#branch_name").html(data);
//console.log(data);
});
}
else {
$("#dvPassport").hide();
}
});
});
</script>
branchfind.blade.php是:
<option value=''>Select Any One</option>
@if(isset($branchname))
@foreach($branchname as $branchnames)
<option value="{{ $branchnames->id }}" {{ old('alumni_branch') == $branchnames->id ? 'selected' : '' }} >{{ $branchnames->branchname }}</option>
@endforeach
@endif
控制器中用于AJAX请求的功能是:
public function findbranch(Request $request)
{
$branchname = branchname::where('course_id', $request->id)->get();
return view('auth.branchfind')->with(compact('branchname'))->render();
}
答案 0 :(得分:1)
使用
$validator = Validator::make($rules,$request->all());
if ($validator->fails()) {
return redirect()->back()->withInput()->withErrors($validator);
}