Jquery 单个输入字段的Laravel验证
我在jquery中使用ajax调用将用户输入从刀片服务器发送到控制器 我有一个输入字段Jquery 单个输入字段的Laravel验证,jquery,ajax,laravel,validation,Jquery,Ajax,Laravel,Validation,我在jquery中使用ajax调用将用户输入从刀片服务器发送到控制器 我有一个输入字段 <div class="col-md-3"> <input type="text" class="form-control inputProfilePage" id="fname" name="fname" placeholder="First Name" value="{{ Auth::user()->fname }}"> </div&g
<div class="col-md-3">
<input type="text" class="form-control inputProfilePage" id="fname" name="fname" placeholder="First Name"
value="{{ Auth::user()->fname }}">
</div>
<div class="col-md-3">
<input type="text" class="form-control inputProfilePage" id="lname" name="lname" placeholder="Last Name"
value="{{ Auth::user()->lname }}">
</div>
field是字段的名称,val是用户在输入中输入的值
updateProfilePage是一个ajax调用
function updateProfilePage(val, field) {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.ajax({
type: 'POST',
url: '/userprofilepage',
data: {
val: val,
field: field
},
success: function (msg) {
console.log("Profile page has been updated:" + val);
},
error: function (msg) {
console.log("Profile page has not been updated:" + msg);
}
});
}
在我的路由文件中,这将调用我的存储函数。我正在努力解决的是如何验证用户输入的值。这是我在控制器中的存储方法
public function store(Request $request)
{
$this->validate($request, [
'val' => 'alpha'
]);
}
如果用户输入的内容不是字母,我想在刀片上打印错误消息
我在刀片服务器上添加了以下代码,但仍然没有出现错误
<div class="alert alert-error">
<ul>
@foreach($errors->all() as $error)
<li>{{$error}}</li>
@endforeach
</ul>
</div>
@foreach($errors->all()作为$error)
- {{$error}}
@endforeach
那么我做错了什么?如果用户在firstname或lastname的输入中输入任何非字母的内容,我想让错误显示在我的blade中。每次加载页面时,服务器都会生成blade语法,当您在ajax中发送表单时,页面不会重新加载,要在警报框中添加错误,我会这样做:(未测试)
函数更新配置文件页(val,字段){
$.ajaxSetup({
标题:{
'X-CSRF-TOKEN':$('meta[name=“CSRF-TOKEN”]).attr('content'))
}
});
$.ajax({
键入:“POST”,
url:“/userprofilepage”,
数据:{
瓦尔:瓦尔,
字段:字段
}
}).done(函数(){
$('.alert').find('ul').append(“配置文件页面已更新:“+data+” ”);
}).fail(函数(){
$('.alert').find('ul').append(“配置文件页面尚未更新:“+data+” ”);
}).始终(功能(e){
控制台日志(e);
});
}
<div class="alert alert-error">
<ul>
@foreach($errors->all() as $error)
<li>{{$error}}</li>
@endforeach
</ul>
</div>
function updateProfilePage(val, field) {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.ajax({
type: 'POST',
url: '/userprofilepage',
data: {
val: val,
field: field
}
}).done(function () {
$('.alert').find('ul').append('<li>Profile page has been updated:' + data + '</li>');
}).fail(function () {
$('.alert').find('ul').append('<li>Profile page has not been updated:' + data + '</li>');
}).always(function (e) {
console.log(e);
});
}