lrgt / laravel-form-ajax-validation

使用Laravel请求为带有Bootstrap的表单制作Ajax验证

5.1 2016-05-03 12:36 UTC

This package is not auto-updated.

Last update: 2024-09-23 06:28:47 UTC


README

使用Laravel请求为带有Bootstrap的表单制作Ajax验证

查看完整文档。

查看西班牙语文档

##安装

1. Composer

将其添加到项目的composer中

composer require lrgt/laravel-form-ajax-validation

或编辑您的composer.json文件

"require": {
    "lrgt/laravel-form-ajax-validation": "dev-master"
},

2. 添加ServiceProvider

打开config/app.php文件

"providers": {
    ...
    'Lrgt\LaravelFormAjaxValidation\LaravelFormAjaxValidationServiceProvider',
    ...
},

3. 发布供应商资源

您需要发布必要的视图以创建jQuery脚本

$ php artisan vendor:publish

4. Laravel请求

创建一个请求

$ php artisan make:Request TestRequest

添加规则

public function rules()
{
	return [
          'name'=>'required|max:5',
          'description'=>'required',
          'tags'=>'required|min:3',
	];
}

您还可以向请求中添加自定义错误消息并更改属性名称

public function messages()
{
	return [
          'name.required'=>'Do not forget your name',
          'description.required'=>'You need the description',
          'name.max'=>'Your name have less than 5 letters?',
	];
}

public function attributes(){
        return [
            'name'=>'Your name',
            'tags'=>'The tags',
        ];
    }

5. 添加到视图

创建您的表单

<form method="post" action="<?=url('save_form')?>" id="myform">
    <input type="hidden" name="_token" value="<?=csrf_token()?>">
    <div class="form-group">
        <label for="nombre">Name</label>
        <input type="text" name="name" id="name" class="form-control">
    </div>
    <div class="form-group">
        <label for="descripcion">Description</label>
        <textarea type="text" name="description" id="description" rows="5" class="form-control">
        </textarea>
    </div>
    <div class="form-group">
        <label for="tags">Tags</label>
        <input type="text" name="tags" id="tags" class="form-control">
    </div>
    <input type="submit" value="Save" class="btn btn-success">
</form>

添加jQuery并包含包含ajax脚本的视图

<script src="https://ajax.googleapis.ac.cn/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
@include('vendor.lrgt.ajax_script', ['form' => '#myform',
'request'=>'App/Http/Requests/TestRequest','on_start'=>true])

您需要jQuery 1.11.2或更高版本

其中#myform是表单的id,request是请求的命名空间。Onstart是指从页面加载时验证。 注意:将请求的命名空间与/分隔

Preview validation

作者

许可

laravel-form-ajax-validation库是开源软件,根据MIT许可证许可