javascript - 如何在不刷新laravel页面的情况下发送数据?

标签 javascript html ajax laravel

我需要在不刷新页面的情况下将数据发送到数据库。

家刃:

<form class="chat" id="message" action="#" method="post">
    <input type="hidden" name="_token" id="_token" value="{{ csrf_token() }}">
    <li>
        <div class="panel-footer">
            <div class="input-group">
                <input type="text" name="message" class="" placeholder="Type your message here..." />
                <span class="input-group-btn">
                    <button type="submit" class=" btn-success btn-sm searchButton" id="save" >
                    Send
                    </button>
                </span>
            </div>
        </div>
    </li>
</form>

Controller :

public function message(Request $data)
{
    $ins = $data->all();
    unset($ins['_token']);
    $store = DB::table("chatbox")->insert([$ins]);
    return Redirect('Users/home')->with('message',"success");
}

Ajax :

<script>
$(document).on("click", ".save", function() {
    $.ajax({
        type: "post",
        url: '/Users/message',
        data: $(".message").serialize(),
        success: function(store) {

        },
        error: function() {
        }
    });
});
</script>

目前,当我发送数据时,它会自动刷新整个页面,但只有特定的表单需要刷新。

最佳答案

需要阻止默认的表单提交,改用脚本

$(document).on("click", "#save", function(e) {

    e.preventDefault(); // Prevent Default form Submission

    $.ajax({
        type:"post",
        url: '/Users/message',
        data: $("#message").serialize(),
        success:function(store) {
            location.href = store;
        },
        error:function() {
        }
    });

});

并且不返回重定向,而是从 Controller 返回 url 并让脚本处理重定向

public function message(Request $data)
{
    $ins = $data->all();
    unset($ins['_token']);
    $store = DB::table("chatbox")->insert([$ins]);
    session()->flash('message', 'success');
    return url('Users/home');
}

关于javascript - 如何在不刷新laravel页面的情况下发送数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47831909/

相关文章:

phpmailer调试输出到html变量

javascript - 如何在不刷新页面的情况下在前端显示更新的数据?

ajax - Woocommerce Ajax 过滤 - 通过范围 slider 的产品属性

javascript - 您可以使用 WhatsApp API For Business 来验证用户吗?

javascript - 从 textarea 复制到 div,保留换行符

javascript - 如何在 Node.js 中根据 UserId 获取匹配的聚合

javascript - jquery ajax无法循环遍历找到的数据

javascript - 当从同一个文件请求时,导出同一目录下的两个模块不起作用

html - 是否可以将 div 的内容隐藏在透明的后面?

php - 将文本与数据库中的数据匹配?