【发布时间】:2017-11-09 06:03:48
【问题描述】:
我在我的 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>
<div class="col-md-3">
<input type="text" class="form-control inputProfilePage" id="lname" name="lname" placeholder="Last Name"
value="{{ Auth::user()->lname }}">
</div>
fname 代表名字,lname 代表姓氏
在我的 jquery 中我有一个电话
$('.selectProfilePage').change(function(){
var val = $(this).val();
var field = $(this).attr('id');
updateProfilePage(val, field);
});
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);
}
});
}
在我的路由文件中,这调用了我的 store 函数。我正在努力解决的是如何验证用户输入的值。这是我的控制器中的存储方法
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>
那我做错了什么?如果用户在姓氏的名字的输入中输入任何非字母的内容,我希望在我的刀片中显示错误。
【问题讨论】:
标签: jquery ajax laravel validation