Laravel Modal表单重定向返回输入不起作用

时间:2018-01-23 03:17:24

标签: javascript jquery laravel laravel-5 laravel-4

我有一个按钮,当用户点击它时,会显示一个模态,其中包含使用data属性传入的所有项目。在模态内部有一个保存按钮,它被传递给我的控制器。验证运行并成功,但我无法再次显示输入。我确实从错误中出现了一个红色框。

当我尝试使用{{ old('title') }}时,没有任何显示。

<button class="fa fa-pencil-square-o fa-lg" data-toggle="modal" :data-id="link.id" :data-title="link.title" :data-link="link.link" :data-description="link.description" :data-enabled="link.enabled" data-target="#editLinkModal"></button>

使用Javascript:

@if (count($errors) > 0)
    $('#editLinkModal').modal('show');
@endif



$('#editLinkModal').on('show.bs.modal', function(e){

var id = $(e.relatedTarget).data('id');
var title = $(e.relatedTarget).data('title');
var link = $(e.relatedTarget).data('link');
var description = $(e.relatedTarget).data('description')
var enabled = $(e.relatedTarget).data('enabled')


var body = $('.modal-content .modal-body');

$('.modal-title').text('Editing ' + title);

body.find('.title').val( title );
body.find('.link').val( link );
body.find('.description').val( description );
body.find('.enabled').val( enabled );

body.find('#editForm').attr('action', "/profile/updateLink/" + id);



$('.save').on('click', function(e){
    $('#editForm').submit();
    //updateLink(id);
});


});

控制器

$validator = Validator::make($request->all(), [
      'title' => 'nullable|max:191',
      'link' => 'required|max:1000',
    ]);

    if ($validator->fails()) {

        return back()
                ->withInput($request->all())
                ->withErrors($validator);

    }

1 个答案:

答案 0 :(得分:0)

您不必要地增加了代码行,

尝试更改此内容:

$validator = Validator::make($request->all(), [
      'title' => 'nullable|max:191',
      'link' => 'required|max:1000',
    ]);

    if ($validator->fails()) {

        return back()
                ->withInput($request->all())
                ->withErrors($validator);

    }

$request->validate( [
      'title' => 'nullable|max:191',
      'link' => 'required|max:1000',
    ]);

validate()对象上调用$request方法将根据规则验证请求,并在验证失败时自动返回错误。