与会者列表与确认删除按钮


Attendee List with confirmation delete button

我有一个与会者列表,其中记录了已填写活动表单的人员。每个表行都附加了一个删除按钮,以便管理员可以从数据库中删除记录。我试图在单击删除按钮时将确认对话框(是/否)附加到表单。

在我附加javascript之前,它删除了一个记录,但是现在,虽然对话框出现并工作,但它没有删除记录。下面是我的代码:

<form id="attending" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    <table class="attendees">
        <thead>
            <tr>
                <th class="name">Name</th>
                <th class="company">Company</th>
                <th class="email">Email</th>
                <th class="contact">Contact</th>
                <th class="day">Day</th>
                <th class="time">Time</th>
                <th class="delete">&nbsp;</th>
            </tr>
        </thead>
        <?php while ($row = mysql_fetch_assoc($result)) { ?>
            <tr>
                <input type="hidden" name="id" value="<?php echo $row['id']; ?>">
                <td class="name"><?php echo $row['name']; ?></td>
                <td class="company"><?php echo $row['company']; ?></td>
                <td class="email"><?php echo $row['email']; ?></td>
                <td class="contact"><?php echo $row['contact']; ?></td>
                <td class="day"><?php echo $row['day']; ?></td>
                <td class="time"><?php echo $row['event-time']; ?></td>
                <td class="delete"><input type="submit" name="delete" class="delete-button" value="Delete"> </td>
            </tr>
    <?php if(isset($_POST['delete'])) { 
       $id = $_POST['id'];
       mysql_query("DELETE FROM `registered_blue` WHERE `id` = '$id' ");
       }
    ?>
  <?php } ?>
    </table>
</form>

下面是我的jquery:

var confirmDelete = $('<div></div>')
        .html('Record will be deleted! This operation can''t be undone. <br />Are you sure?')
        .dialog({
            autoOpen: false,
            title: 'Attendee will be deleted! Please Confirm.',
            buttons: {"Yes": function() { 
                $(this).dialog("close"); 
                $('#attending').submit();
            }, "No": function() {
            $(this).dialog("close");
         }
         }
    });  
    $('.delete-button').on('click', function(e){
        e.preventDefault();
        $(confirmDelete).dialog('open');
    });
谁能告诉我我哪里错了?由于

当点击任何带有"delete-button"类的东西时,下面的脚本将弹出一个JavaScript对话框。如果用户点击"是",应用程序将继续默认的事情,如果用户点击"否",应用程序将停止它应该做的任何事情。

$('.delete-button').click(function () {
    return window.confirm("Attendee will be deleted! Please Confirm.');
});

你也可以在你的原始脚本中这样做,如果你想让它继续默认的东西,你只需要返回true,如果你想让它停止,你需要返回false。

编辑:我想这个应该可以了:

$('.delete-button').on('click', function(e){
    $('<div></div>')
    .html('Record will be deleted! This operation can''t be undone. <br />Are you sure?')
    .dialog({
        autoOpen: false,
        title: 'Attendee will be deleted! Please Confirm.',
        buttons: {"Yes": function() { 
            var result = true;
            $(this).dialog("close"); 
        }, "No": function() {
            var result = false;
            $(this).dialog("close");
        }
    }
    return result;
});