我想在Laravel的客户端验证表单。有什么简单的方法吗
您可以使用Laravel 5 Javascript验证包。此包基于JQuery验证插件在视图中启用透明Javascript Valditaion
这是如何在控制器中重用验证规则的基本示例
PostController.php
名称空间应用程序\Http\Controllers;
类后控制器扩展控制器{
/**
*在中的属性中定义验证规则
*控制器将重新使用这些规则。
*/
受保护的$validationRules=[
“title”=>;“必需|唯一|最大值:255”,
“正文”=>;“必需”
];
/**
*显示博客文章的编辑表单
*我们基于共享验证规则创建一个JsValidator实例
*@param string$post_id
*@返回响应
*/
公共功能编辑($post\u id)
{
$validator=JsValidator::make($this->;validationRules);
$post=post::find($post\u id);
返回视图('edit_post')->;带有([
“验证器”=>;$validator,
“post”=>;$post
]);
}
/**
*存储传入的博客文章。
*@param Request$Request
*@返回响应
*/
公共函数存储(请求$Request)
{
$v=Validator::make($request->;all(),$this->;validationRules]);
如果($v->;失败())
{
return redirect()->;back()->;withErrors($v->;errors());
}
//储存物品
}
}
在视图中,您只需打印传递给视图的验证程序对象记住这个包依赖于JQuery和
在此之前必须包含jsvalidation.js
编辑_post.blade.php
<;div class=“container”>;
<;div class=“行”>;
<;div class=“col-md-10 col-md-offset-1”>;
<;form class=“form horizontal”role=“form”method=“POST”action=”“id=“ddd”>;
<;div class=“表单组”>;
<;label class=“col-md-4控制标签”>;标题</标签>;
<;div class=“col-md-6”>;
<;输入type=“text”class=“form control”name=“title”>;
</部门>;
</部门>;
<;div class=“表单组”>;
<;label class=“col-md-4控制标签”>;数组</标签>;
<;div class=“col-md-6”>;
<;textarea name=“body”></textarea>;
</部门>;
</部门>;
</表格>;
</部门>;
</部门>;
</部门>;
<;!--脚本-->;
<;脚本src=”https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js“></脚本>;
<;脚本src=”https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.1/js/bootstrap.min.js“></脚本>;
<;!--Laravel Javascript验证-->;
<;script type=“text/javascript”src=”https://stackoverflow.com/questions/28762376/{{asset('vendor/jsvalidation/js/jsvalidation.js')}}</脚本>;
{!!$validator!!}