我计划在脚本从数据库中删除之前有一个确认框,以防选择了错误的行。
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>
按下'删除'图像时,只删除该行,不显示确认框?
答案 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>';