簡體   English   中英

通過id刪除帶有ajax的記錄

[英]Delete record with ajax via id

使用ajax / jquery從mysql數據庫中刪除記錄時遇到問題。 我遇到的問題是它沒有從數據庫中刪除但是從列表中刪除。 我在這做錯了什么?

這是我的代碼:

jQuery(document).ready(function(){
  $(".deleteitem").click(function(){

    var parent = $(this).closest('li');
    var id = parent.attr('id');

    $.ajax({
      type: "POST",
      data: "id=" +id,
      URL: "delete.php",
      success: function(msg){
        $('#'+id).remove();
      }
    });
  });
});

我的php文件delete.php:

$con=mysqli_connect("localhost","user","pass","db");
// Check connection
if (mysqli_connect_errno())
{ echo "Failed to connect to MySQL: " . mysqli_connect_error(); }

$id = $_POST['id'];

if (isset($id)) {
  $query = "DELETE FROM img_slider WHERE id = '$id'";
  mysqli_query($query) or die('Error, insert query failed');
}

HTML標記:

<li id='".$row['id']."'>
<a href='#' class='deleteitem'><img src='../img/delete.png'></a>
</li>

首先測試以確保調用具有有效ID的刪除文件。 下面的JavaScript應該可以正常工作。

<script type="text/javascript">
<!--
$(function() {
  $('.deleteitem').click(function(e) {
    e.preventDefault();
    var id = $(this).parent('li').attr('id');
    $.get('delete.php',{ id: id}).done(function(data) {
      if(data=='Error, insert query failed') {
          // dont delete from list
          alert('Failed to delete '+id);
      } else {
          //delete from list
          $('#'+id).remove();
          alert('Deleted '+id);
      }
    });
  });
});
//-->
</script>

編輯:更新腳本以協助父ID處理。

你能說出錯誤的來源嗎? 大多數現代瀏覽器應該能夠讓您深入了解錯誤發生在哪一行或哪個部分。

上面的腳本應該替換你所有的javascript。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM