首页 > 解决方案 > Jquery replaceWith() 不更新数据

问题描述

我想用每个项目的短 URL 替换删除消息。问题是消息一直显示已删除的第一个短 URL 项目。我希望短 URL 是我刚刚删除的那个。使用 Ajax 和 Jquery。提前致谢。

HTML

<div id="response-message"></div>

脚本

    function removeLink(id){
    if(confirm("Are you sure you want to Delete this link?")){
        $.ajax({
        type:'delete',
        url:'/link/' + id,
        dataType: 'JSON',
        data:{
            "_token": "{{ csrf_token() }}",
            'id':id,
        },
        success:function(data){
            $('#response-message').replaceWith('<div class="alert alert-danger mx-auto">Link ' + data.short_url + ' deleted.</div>');
            $('.post'+ data.id).remove();
        }
        });
    }else{
        return false;
    }
};

控制器

    public function destroy($id)
{
    $link = Link::findOrFail($id);
    $link->delete();

    return $link;
}

标签: javascriptphpjquerylaravel

解决方案


这对我有用

控制器

public function destroy($id)
{
    $link = Link::findOrFail($id);
    $link->delete();


    return response()->json($link);
}

推荐阅读