【问题标题】:Laravel Ajax on Update data getting Success Message on same PageLaravel Ajax 更新数据在同一页面上获得成功消息
【发布时间】:2020-01-26 09:23:40
【问题描述】:

我正在尝试在 Laravel 中使用 Ajax 更新数据,我的数据正在成功更新,但是当我单击更新时,它的成功消息显示在下一页上,我希望它在同一页面上显示消息和更新数据而不加载页面.

Laravel 控制器:

public function update(Request $request, $id)
    {
        $teacher = Teacher::find($id);
        $teacher->efirst = $request->efirst;
        $teacher->esecond = $request->esecond;
        $teacher->save();

        return response()->json([
            'status' => 'success',
            'msg' => 'esecond has been updated'
        ]);
    }

AJAX 函数:Update.Js,

jQuery(document).ready(function($)  {
    $("#update-form").submit(function (e) {
        e.preventDefault();
        $.ajax({
            type: "POST",
            url: "teachers/" + $('#update-id').attr("value"),
            dataType: 'json',
            headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') },
            data : $(this).serialize(),
            success: function (data) {
                    let teacher = Object.entries(data.teacher);
                     teacher.forEach(item => { $(`[name=${item[0]}]`).val('item[1]'); });
            },
        });
    });
});

查看: 它包含显示编辑列表的表格,以及带有更新按钮的表格下的表格。 我的数据正在更新,但我不想重新加载页面。也许与追加有关?

【问题讨论】:

  • 能否更新表单的html标签?
  • 能否详细说明
  • 我只是想看看你的表单标签。您在“
    ”标签中使用的道具是什么?
  • 您可以将<input type="submit" ..../> 更改为 ` 而不是使用submit() 事件,而是使用'onClick()' 事件,
  • 我试过这个:$("form").on('submit',function(e):: 但现在没有提交

标签: ajax laravel laravel-5


【解决方案1】:

如果要刷新数据 你可以做这个

var table =  $('#tableId');
table.DataTable().ajax.reload();

这个命令可以重新加载数据, 在你看来, 你可以制作按钮

type="button"

或添加到表单中

onsubmit="return false;"

【讨论】:

  • 您是否尝试将消息放入会话中?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-10
  • 2020-11-28
  • 2015-07-13
  • 1970-01-01
  • 2013-11-30
  • 1970-01-01
相关资源
最近更新 更多