2016-09-30 6 views
0

У меня есть таблица с данными, которые можно удалить, если они выбраны. Я хочу иметь возможность добавить кнопку отмены, которую я могу поразить, если строка случайно удалена. Мне нужно только помнить последнее удаление строки. Мне не нужно, чтобы все это помнили. Как это будет работать? Я бы предпочел, чтобы кнопка отмены была доступна только для отображения, если строка была удалена, но если это не так ... может быть, просто функция disabled, когда строки еще не удалены, и может быть enabled всякий раз, когда строка были удалены.Создать опцию отмены/функцию после функции удаления

Вот что у меня есть.

HTML/PHP:

<body> 

<table id="html_master"> 
<thead> 
    <tr> 
    <td>ID</td> 
    <td>Vendor</td> 
    <td>Buyer ID</td> 
    <td>POC Name</td> 
    <td>POC Email</td> 
    <td>POC Phone</td> 
    <td>Edit/Delete</td> 
    </tr> 
</thead> 
<tbody> 

<?php 
    foreach ($dbh->query($sql) as $rows){ 
    ?> 
    <tr> 
     <td class="mr_id" contenteditable="false"><?php echo intval ($rows['MR_ID'])?></td> 
     <td class="mr_name" contenteditable="false"><?php echo $rows['MR_Name']?></td> 
     <td class="buyer_id" contenteditable="false"><?php echo $rows['Buyer_ID']?></td> 
     <td class="poc_n" contenteditable="false"><?php echo $rows['MR_POC_N']?></td>  
     <td class="poc_e" contenteditable="false"><?php echo $rows['MR_POC_E']?></td> 
     <td class="poc_p" contenteditable="false"><?php echo $rows['MR_POC_P']?></td> 
     <td><button class="edit" name="edit">Edit</button> 
     <button class="delRow" name="delete" onclick="deleteRow(this)">Delete</button></td> 
     </tr> 
<?php 
    } 
?> 
</tbody> 
     <br> 
     <input type="button" class="add" value="Add Row" onclick="addRow('html_master')"> 
</table> 

</body> 

Относительный Javascript:

function deleteRow(row) 
{ 
    var result = confirm("Are you sure you want to delete this entry?"); 
    if (result) { 
      var i=row.parentNode.parentNode; 
      i.parentNode.removeChild(i); 
}} 
+0

Используйте CSS и спрячьте его при первом удалении. На следующем 'delete' удалите его, затем скройте запрошенное удаление. – chris85

+0

У вас есть какое-то направление, как будет выглядеть этот код? Извините, я никогда раньше не делал ничего подобного. – Rataiczak24

+0

Это будет решение JS, а не PHP. PHP привел меня сюда, извините. Если у вас есть jquery, вы можете использовать функцию 'attr' и установить' display' в 'none'. Не уверен в ванильном javascript, как это сделать с рук. – chris85

ответ

0

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