Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery确认框在取消选择时仍在执行php代码_Php_Jquery_Html - Fatal编程技术网

Jquery确认框在取消选择时仍在执行php代码

Jquery确认框在取消选择时仍在执行php代码,php,jquery,html,Php,Jquery,Html,我有点小问题。我为用户提供了删除数据库记录的选项。但首先我想为他们提供一个jquery确认框,询问他们是否确定要删除这个特定记录 问题是,当用户在确认框中单击cancel时,我的php代码仍然执行我的sql delete查询 我怎样才能阻止此代码在取消选择上执行,并允许它在确定选择上执行 提前感谢,我的代码如下: HTML <div id="remove"> <a href="myaccount.php?deletebook=' . $bookID .

我有点小问题。我为用户提供了删除数据库记录的选项。但首先我想为他们提供一个jquery确认框,询问他们是否确定要删除这个特定记录

问题是,当用户在确认框中单击cancel时,我的php代码仍然执行我的sql delete查询

我怎样才能阻止此代码在取消选择上执行,并允许它在确定选择上执行

提前感谢,我的代码如下:

HTML

    <div id="remove">
        <a href="myaccount.php?deletebook=' . $bookID . '" data-value="' . $customerName . '">delete</a>
    </div> 
PHP

     if(isset($_GET['deletebook'])){
         $bookID = trim(strip_tags($_GET['deletebook'])); 
         $bookID = mysql_real_escape_string($bookID);

         $sql50 = "DELETE FROM books WHERE bookID='$bookID' LIMIT 1";
         $result50 = mysql_query($sql50) or die(mysql_error());

         $sql51 = "DELETE FROM pages WHERE bookID='$bookID'";
         $result51 = mysql_query($sql51) or die(mysql_error());

         header("location: myaccount.php");
     }
您的代码运行良好,请参见


将jquery更改为:

$(document).ready(function () {
    $('#remove a').click(function (e) {
        var customerName = $(this).data('value');
        var r = confirm("Do you really want to delete your book with the name: " +    customerName + "?");
        if (r != true) {
        e.preventDefault();
        }

    });
});

如果使用普通JavaScript确认框,则代码应该可以正常工作。共享相关插件如果您使用any将本机js确认框转换为自定义框

不起作用仍然执行php代码,是否需要读取$(“#删除a”)。单击(函数(e){可能吗?很抱歉,现在应该可以了,我忘了通过click处理程序传递事件变量。Z Spence您的编辑非常有效,我感谢您的帮助和花时间的帮助感谢下面的所有人,谢谢。
$(document).ready(function(){
    $('#remove a').click(function(){
        var customerName = $(this).data('value');
        return confirm("Do you really want to delete your book with the name: "+customerName+"?");
    });
});
$(document).ready(function () {
    $('#remove a').click(function (e) {
        var customerName = $(this).data('value');
        var r = confirm("Do you really want to delete your book with the name: " +    customerName + "?");
        if (r != true) {
        e.preventDefault();
        }

    });
});
$(document).ready(function () {
    $('#remove a').click(function () {
        var customerName = $(this).data('value');
        if(confirm("Do you really want to delete your book with the name: " +customerName+ "?")){
          // YOUR DELETE CODE
        }
    });
});