编程语言
首页 > 编程语言> > php-如何在Laravel 5.2中发送多个参数AJAX

php-如何在Laravel 5.2中发送多个参数AJAX

作者:互联网

如何为AJAX Laravel发送多个值.
例如:

$('#submit_').on('click', function (e) {
     e.preventDefault();
     var form_data = $('#create').serialize();
     var form_taxonomy = 'category';
     $.ajax({
          headers: {
              'X-CSRF-Token': $('input[name="_token"]').val()
          },
                type: 'post',
                url: '{!! URL::route('category') !!}',
                data: {formData:form_data,formTaxonomy: form_taxonomy},
                success: function () {
                    $('#append').load('{!! URL::route('loadCat') !!}');
                },
                error: function (xhr, status, errorThrown) {
                    alert(JSON.parse(xhr.responseText).category[0]);
                }
            });
            jQuery("#create").val('');
        });

控制器代码:

public function create(messageRequest $request)
{
    if($request->ajax()) {
        $name = Input::get('formData');
        $taxonomy = Input::get('formTaxonomy');
        return response()->json($name, $taxonomy);
    }
}

html代码:

<div class="col-sm-6">
<form method="POST" action="http://localhost:8000/category" accept-charset="UTF-8"><input name="_token"
                                                                                          value="IzByO9fU5yeanaVCudCQpkL5bXGzUh9B4jb400iU"
                                                                                          type="hidden">

    <div class="form-group">
        <div class="form-group">
            <input class="form-control text-right" id="create" name="category" type="text">
        </div>
        <div id="submit_"><input name="createSub" id="submit" class="btn btn-primary" value="submit" type="submit">
        </div>
    </div>
</form>

消息请求验证:

    public function rules()
{
    return array(
    'category'=>'required|alpha|unique:taxonomies,name',
    );
}
public function messages(){
    return [

        'category.required'=>'fill',
        'category.alpha'=>'only charecter',
        'category.unique'=>'dublicate'
    ];
}

此代码不起作用.我使用了其他示例,但是没有人对此问题没有响应,因为我不只知道laravel中的参数数据如何调用不会面对错误并存储在数据库中的数量.

解决方法:

您正在使用FormRequests充当对该控制器方法的验证.在这种情况下,您的FormRequest为:MessageRequest-包括类别名称的验证参数.

提交ajax时,它没有提供类别字段,因此验证失败.

要进行测试,请尝试将类别数据提供给ajax数据:

data: {formData:form_data,formTaxonomy: form_taxonomy, category: 'somevalue-unique-to-your-taxonomies'},

标签:laravel,laravel-5-2,ajax,php,jquery
来源: https://codeday.me/bug/20191027/1942546.html