2017-04-20 91 views
0

使用JSON条目我已动态生成的表也有这个按钮:删除在Laravel

<button class="btn btn-danger btn-xs btn-delete delete-task" 
value="{{$contact->id}}">delete</button> 

在代码结束时,我有这样的:

<meta name="_token" content="{!! csrf_token() !!}" /> 

按钮触发该:

$(document).ready(function(){ 

$('.delete-task').click(function(){ 
    var contact_id = $(this).val(); 

    $.ajax({ 
     type: "DELETE", 
     url: adressbook_edit + '/' + contact_id, 
     success: function (data) { 
      console.log(data); 
      $("#contact" + contact_id).remove(); 
     }, 
     error: function (data) { 
      console.log('Error:', data); 
     } 
    }); 
}); 
} 

这应该引起我的路线是这样的:

Route::delete('/adressbook_edit/{$contact_id?}',function($contact_id){ 
    $contact = addressbook::destroy($contact_id); 
    return Response::json($contact); 
}); 

我期待删除数据库中的条目,但是我得到一个404错误。方向显然是正确的。这是我得到的错误:

DELETE http://myip/adressbook_edit/2 404 (Not Found) send @ app.js:26 ajax @ app.js:25 (anonymous) @ adressbook.js:79 dispatch @ app.js:25 g.handle @ app.js:25 adressbook.js:87

Error: Object {readyState: 4, getResponseHeader: function, getAllResponseHeaders: function, setRequestHeader: function, overrideMimeType: function…}

Adressbook.js是前面提到的ajax函数被调用的地方。

+2

那是正确的'删除( '/ adressbook_edit/{$ CONTACT_ID?}' ''我认为不需要'$'和'?'。试试用'delete('/addressbook_edit/ {contact_id}' –

+0

@AntonisTsimourtos尝试没有区别 – prgrm

+0

除了What @AntonisTsimourtos建议你在ajax中的url属性请求需要如下所示:'url:'adressbook_edit /'+ contact_ id'或'url:'{{url(“adressbook_edit”)}}'+'/'+ contact_id' –

回答

1

试图将一个AJAX网址改成这样:

url: '/adressbook_edit/' + contact_id 

,改变你的路线,这一点:

Route::delete('/adressbook_edit/{contact_id}',function($contact_id){ 
    $contact = addressbook::destroy($contact_id); 
    return Response::json($contact); 
});