Php 用于从数据库中删除记录的Ajax脚本不起作用
我写了一个脚本,应该删除一个特定的条目。问题是,当您单击“删除”按钮时,记录不会消失,您必须重新加载页面以使其消失。并且只删除数据库中的第一条记录,例如,如果单击“删除id=2的记录”,则将删除id=1的记录。我就是不明白为什么会这样 这是我的剧本Php 用于从数据库中删除记录的Ajax脚本不起作用,php,ajax,laravel,Php,Ajax,Laravel,我写了一个脚本,应该删除一个特定的条目。问题是,当您单击“删除”按钮时,记录不会消失,您必须重新加载页面以使其消失。并且只删除数据库中的第一条记录,例如,如果单击“删除id=2的记录”,则将删除id=1的记录。我就是不明白为什么会这样 这是我的剧本 <script type="text/javascript"> $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-tok
<script type="text/javascript">
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$(document).ready(function () {
$("body").on("click","#delete",function(e){
e.preventDefault();
var id = $(this).data('data-id');
var token = $("meta[name='csrf-token']").attr("content");
$.ajax({
url: "{{route('deletePost',['id' => $post->id])}}",
type: 'DELETE',
data: {_token: token, id: id},
success: function (response){
$("#deletePost").html(response.message);
}
});
return false;
});
});
</script>
路线
和html
<form action="{{route('deletePost', ['id' => $post->id])}}" method="post" id="formDelete">
@csrf @method('DELETE')
<button type="submit" id="delete" class="btn btn-sm btn-outline-danger py-0 mt-4" data-id="{{ $post->id }}">Удалить</button>
</form>
@csrf@method('DELETE')
Удалить
您错误地访问了按钮删除的属性数据id
。
应该是
var id = $(this).data('id');
或
您错误地访问了按钮删除的属性
数据id
。
应该是
var id = $(this).data('id');
或
改变
var id=$(this.data('data-id')
到
var id=$(this.data('id')
Delete方法很好。
删除按钮不需要表单
<button type="submit" id="delete" class="btn btn-sm btn-outline-danger py-0 mt-4" data-id="{{ $post->id }}">Удалить</button>
Уаааааа
更改
var id=$(this.data('data-id')
到
var id=$(this.data('id')
Delete方法很好。
删除按钮不需要表单
<button type="submit" id="delete" class="btn btn-sm btn-outline-danger py-0 mt-4" data-id="{{ $post->id }}">Удалить</button>
Уаааааа
您的表单是否在foreach或任何类型的循环中?您的表单是否在foreach或任何类型的循环中?谢谢,现在必要的帖子被删除,它们只在页面重新加载后被删除谢谢,现在必要的帖子被删除,它们只在页面重新加载后被删除
<script type="text/javascript">
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$(document).ready(function () {
$("body").on("click","#delete",function(e){
e.preventDefault();
var id = $(this).data('id');
var token = $("meta[name='csrf-token']").attr("content");
$.ajax({
url: "delete/"+id,
type: 'DELETE',
data: {_token: token, id: id},
success: function (response){
$("#deletePost").html(response.message);
// call your data get function here for disappear record after delele
}
});
return false;
});
});
</script>
Route::delete('delete/{id}', 'ProfileController@delete')->name('deletePost');
<button type="submit" id="delete" class="btn btn-sm btn-outline-danger py-0 mt-4" data-id="{{ $post->id }}">Удалить</button>