删除前确认href链接

时间:2017-06-25 19:07:09

标签: javascript php html

我计划在脚本从数据库中删除之前有一个确认框,以防选择了错误的行。

href的代码

echo '<td align="center" valign="middle"><a href="delete.php?id='.$row["id"].'" class="confirmation"><img src="img/icon/delete.png"></a></td>';

Java脚本

<script type="text/javascript">
    var elems = document.getElementsByClassName('confirmation');
    var confirmIt = function (e) {
        if (!confirm('Are you sure?')) e.preventDefault();
    };
    for (var i = 0, l = elems.length; i < l; i++) {
        elems[i].addEventListener('click', confirmIt, false);
    }
</script>

按下'删除'图像时,只删除该行,不显示确认框?

3 个答案:

答案 0 :(得分:1)

确保脚本标记位于页面的末尾,或者至少在链接之后。

答案 1 :(得分:0)

<强> PHP

echo '<td align="center" valign="middle"><a data-href="delete.php?id='.$row["id"].'" href="javascript:;" onclick="confirmToDelete(this);"><img src="img/icon/delete.png"></a></td>';

<强>的JavaScript

<script>
  function confirmToDelete(element){
    if(!element) return false;
    if(confirm('Are you sure?')) self.location.href=element.getAttribute('data-href');
  }
</script>

答案 2 :(得分:0)

尝试以下代码。你可以在没有外部JavaScript的情况下完成。只需在链接的confirm事件中添加onlick功能。

PHP

echo '<td align="center" valign="middle"><a href="delete.php?id='.$row["id"].'" class="confirmation" onclick="return confirm(\'Are you sure?\');"><img src="img/icon/delete.png"></a></td>';