0

私は JavaScript を持っています。削除をクリックすると、確認のためにポップアップが表示されます。削除する前に、Mozilla Firefox と Google Chrome で非常にうまく機能します。しかし、IE8 で [削除] をクリックするとポップアップが表示され、ファイルが削除されると削除が拒否されます。誰かがそのための回避策を持っていますか? ここに私のスニペットがあります

引き金

<?php echo '<td><a href="delete.php?staff_id=' . $row['staff_id'] . '"><input type="button" onclick="confirmDelete(event)" value="delete"></a></td>'; ?></td>

確認スニペットを削除

function confirmDelete(e) {
 if(confirm('Are you sure you want to delete this Record?'))
   alert('Record Deleted !');
 else {
  alert('Cancelled !');
  e.preventDefault();
 }
}
</script>
4

3 に答える 3

1

これは、FF と IE でクリック イベントのバブルが異なるために発生します。

問題は、ボタンがタグ内にあり、独自のクリック ハンドラーがあることです。

次のようなことを試してみてください。

<a href="delete.php?id=1" onclick="confirmDelete(event)">delete</a>

またはさらに簡単に:

<a href="delete.php?id=1" onclick="return confirm('Are you sure?')">delete</a>

これは、すべてのブラウザで同じように機能します。

于 2013-09-30T07:41:41.953 に答える
0

また、データベースから何かを削除するときに、確認メッセージを 2 回使用することもできます。ここにコードがあります

function confirmDelete() {
    var cont = false;
    cont = confirm('Warning! Delete this membership level?')
    if (!cont) {
        return false;
    }
    cont = confirm('Last Warning! Are you really sure?\nDeleting this membership level cannot be undone!');
    if (!cont) {
        return false;
    }
    return true;
}

<a href="action=delete_level&id=<?php echo $member_level; ?>" onclick="return confirmDelete()">Delete</a>

ありがとう..

于 2014-01-02T11:45:55.137 に答える