使用普通的jquery/javascript创建一个弹出确认框


Using plain jquery / javascript to create a popup confirm box

以下是如何在删除时制作确认框的提取代码,

对于HTML部分一个链接是触发JS代码,但它会同时触发php代码

对于JS部分弹出框被触发

对于PHP部分处理sql查询,应该可以

问题是。。。

  1. 我应该用js来触发php页面吗?但是,我如何让php页面知道我要删除哪个ListID
  2. 我应该在html链接中放什么
  3. 如果我想在弹出框中包括列表名称,例如,你想删除列表A吗?其中列表A已经是一个变量了。唯一的问题是我如何将它附加到弹出框中

谢谢

HTML

<a id="delete" href='delete.php?id=$set[ListID]'>Delete</a>

JS-

$(function(){
    $("#delete").click(function() {
        // what should be add here? 
    });
});

PHP

//connection db
INSERT  INTO delete_list SELECT * FROM list WHERE ListID=?;    
INSERT  INTO delete_user_list SELECT * FROM user_list WHERE ListID=?;    
INSERT  INTO delete_require_attributes SELECT * FROM require_attributes WHERE ListID='2';    
INSERT  INTO delete_subscriber SELECT * FROM subscriber WHERE ListID=?;    
INSERT  INTO delete_subscriber SELECT * FROM subscriber WHERE ListID=?;    
DELETE FROM list WHERE ListID = '1'

很抱歉,我把上一个问题搞砸了,因为我发现我在最后一个问题中使用的插件不适合我。

我通过给HTML元素本身提供id和数据(HTML5ref)sweet来实现这一点,以便与jQuery一起使用。在此之后,您可以执行ajax调用(可选)来删除数据库中的服务器端。

示例

<a data-id="<?php echo $set[ListID]; ?>" class="delete-trigger" href='javascript:;'>Delete</a>

JS-

$(function(){
    $("#delete-trigger").click(function() {
        var id = $(this).data('id');
        $.ajax({
            url: 'http://yoururl.com/delete.php?id=' + id,
            success: function(data) {
                console.log('deleted');
            }
        });
    });
});

html

<a class="delete" data-listname="<?php echo $set['ListName']?>" href="delete.php?id=<?php echo $set['ListID']?>">Delete</a>

js

$(function(){
  $(".delete").click(function() {
    return confirm('Are you sure you want to delete ' + $(this).data('listname') + '?');
 });
});