0

我正在显示一个 JavaScript 确认对话框,询问用户是否确定他们希望删除记录。但是,即使用户单击“是”,查询仍然执行并且记录仍然被删除,这里的问题可能是代码:

<script>
    function deleletconfig() {
        var del=confirm("Are you sure you want to delete this record?");
        if (del==true){
            alert ("record deleted")
        } else {
            alert("Record Not Deleted")
        }
    }
</script>

因此,即使我单击取消,查询/记录也会被删除。我怎样才能阻止这种情况发生我做错了什么?还是个新手JS!:(

4

5 回答 5

9

您必须使用确认对话框的返回值:

echo"<form method = \"post\" action =\"change.php?change=$productid\">";
echo// form fields here!...
echo"<input type=\"submit\" name = \"delete\" value=\"Delete\" onclick=\"return deleletconfig()\" />";

if (isset($_POST['delete'])){  //delete clicked
//get variables here
//run query delete record from xyz where id=$id


}

<script>
    function deleletconfig(){

    var del=confirm("Are you sure you want to delete this record?");
    if (del==true){
       alert ("record deleted")
    }else{
        alert("Record Not Deleted")
    }
    return del;
    }
</script>

查看“onclick”和“deleletconfig”的变化。

于 2013-04-22T17:30:42.160 回答
2

创建一个函数并调用它:

<script type="text/javascript">
    function confirmation() {
      return confirm('Are you sure you want to do this?');
    }
</script>

<a href="#" onclick="return confirmation()">Delete</a>
于 2014-12-06T17:25:25.340 回答
1

代替

if (del==true){

if(del) {
于 2013-04-22T17:28:02.183 回答
0

添加return = true表示删除,return = false表示不删除。

于 2013-04-22T17:30:45.983 回答
0

只需复制和粘贴

它提供了一个警告框,以确认您希望链接执行的任何操作。

警报根据所选答案返回真或假,然后要么执行您设置链接的操作,要么不执行您的链接应该执行的操作。

<td>
   <a class="delete_button" href="#">Delete</a>
</td>

<script type="text/javascript">
    $('.delete_button').click(function(e){
        var result = confirm("Are you sure you want to delete this user?");
        if(!result) {
            e.preventDefault();
        }
    });
</script>
于 2017-09-15T13:17:53.233 回答