【发布时间】:2016-10-31 01:32:39
【问题描述】:
如果我单击提交按钮,我的验证似乎无法正常工作,它只是刷新浏览器并且不会验证我的输入,或者我不确定 Javascript 是否导致验证无法工作。首先,我将根据用户的选项使用empty() 和append() 函数从其他文件中附加我的注册表单。
@section ('page-script')
<script>
$(document).on("click", "#register", function ()
{
$.get("accountRegister", function (data)
{
$("#accountBottomContainer").empty();
$("#accountBottomContainer").append(data);
});
});
</script>
@endsection
正如您在下面看到的,我将 register.blade.php 附加到名为 #accountBottomContainer 的 panel-body 中
如果用户点击register 按钮后,我将在此处附加我的register.blade.php 按钮,它将附加具有id = accountBottomContainer 的panel-body
@section ('content')
<div class = "row">
<div class = "col-xs-12 col-md-8">
<div class = "panel panel-default">
<div class = "panel-heading">
<h2>Account Dashboard</h2>
<hr>
</div>
<div class = "panel-body">
<button type = "button" class = "btn btn-info" id = "register">Register Employee</button>
<button type = "button" class = "btn btn-info" id = "searchEmployee">Search Employee</button>
<div class = "row">
<br>
<div class="col-md-10">
<div class = "panel panel-default">
<div class = "panel-body" style = "height: 500px" id = "accountBottomContainer">
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@endsection
带有验证的表单
在这里,我循环遍历每个错误以检查用户错过填写其中一个文本字段的位置。
@if (count($errors) > 0)
<div class = "row">
<div class = "col-md-6">
<ul>
@foreach($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
</div>
@endif
<form class = "form-vertical" role = "form" method = "post" action = "{{ route ('account.accountRegister') }}">
<div class = "form-group">
<label for = "email" class = "control-label">Email Address</label>
<input type = "text" name = "email" class = "form-control" id = "email">
</div>
<div class = "form-group">
<label for = "username" class = "control-label">Username</label>
<input type = "text" name = "username" class = "form-control" id = "username">
</div>
<div class = "form-group">
<label for = "password" class = "control-label">Password</label>
<input type = "password" name = "password" class = "form-control" id = "password">
</div>
<div class = "form-group">
<button type = "submit" class = "btn btn-default">Sign Up</button>
</div>
<input type = "hidden" name = "_token" value = "{{ Session::token() }}">
</form>
控制器
public function postRegister(Request $request)
{
$this->validate($request, [
//This will be unique in users table
'email' => 'required|unique:users|email|max:255',
'username' => 'required|unique:users|alpha_dash|max:20',
'password' => 'required|min:6',
]);
}
路线
Route::get('/accountRegister',
[
'uses' => '\App\Http\Controllers\AccountController@getRegister',
'as' => 'account.accountRegister',
]);
Route::post('/accountRegister',
[
'uses' => '\App\Http\Controllers\AccountController@postRegister',
]);
【问题讨论】:
-
请考虑在您的 HTML 属性中等号前后没有空格。它提高了可读性! (注意:这不是您问题的解决方案,只是一个建议):stackoverflow.com/questions/3551541/…
标签: javascript php jquery validation laravel