2016-02-04 3 views
1

Я следую учебнику онлайн на AJAX. Существует лекция о том, как удалить строку из таблицы, не перезагружая ее снова.Удаление строки с использованием AJAX с использованием fadeOut

Я добавил кнопку удаления для каждой строки в своей таблице HTML, и я установил ее идентификатор id="del" внутри таблицы с id="myTable".

Я пытаюсь удалить строку с помощью Ajax и удалить ее без обновления с помощью анимации fadeOut().

У меня есть этот Ajax скрипт:

$("#myTable #del").click(function() 
    { 
     if(confirm("Are you sure you want to delete this row ?")) 
     { 
      var id = $(this).closest('tr').attr('id'); 
      var row = $(this).closest('tr'); 
      $.ajax 
      ({ 
       url: 'delete_row.php', 
       type: 'POST', 
       data: {dataID: id}, 
       dataType: "text", 


       success:function(data) 
       { 
        console.log(id); 
        if(data=="deleted") 
        { 
         row.fadeOut('slow', function() {$(this).remove();}); 
        } 
       } 
      }); 
     } 
    }); 

В консоли, я вижу правильный идентификатор отображается, но при этом это не исчезнет из таблицы, ни удаляются из базы данных.

Вот PHP код:

try 
    { 
     $id = $_POST['dataID']; 

     $delete = "DELETE FROM employee WHERE id = :d"; 
     $delStmt = $conn->prepare($delete); 
     $delStmt->bindValue(":id", $id); 
     $delStmt->execute(); 

     echo "deleted"; 
    } 
    catch(PDOException $m) 
    { 
     $m->getMessage(); 
     echo "error"; 
    } 

код инструктор работает должным образом, и я не могу видеть, где моя ошибка, так что это не работает для меня. Любая помощь приветствуется.

+1

'ID =: d' и' bindValue (": ИД"? 'Sure –

+0

О, спасибо, в моем дб это идентификатор не d. Спасибо –

+0

@androidnation u_mulder сообщает вам, что 'id =: d' и' bindValue (": id" 'не соответствует –

ответ

0

значение Bind не имеет такое же имя в запросе PDO

$delete = "DELETE FROM employee WHERE id = :d"; 

$delStmt->bindValue(":id", $id); 
Смежные вопросы