使用plain jquery / javascript创建一个弹出确认框

时间:2012-03-20 15:32:23

标签: php javascript jquery

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

适用于HTML部分 链接是触发JS代码,但它会同时触发php代码

对于JS部分 弹出框被触发

对于PHP部分 处理sql查询,应该没问题

问题 ......

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

    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'
    

    很抱歉,我弄乱了上一个问题,因为我发现我在上一个问题中使用的插件对我不起作用。

2 个答案:

答案 0 :(得分:1)

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') + '?');

 });
});

答案 1 :(得分:1)

我这样做是通过将id放到HTML元素本身,dataHTML5 ref)与jQuery一起使用。 在此之后,您可以执行ajax call可选项来删除数据库中的服务器端。

实施例

<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');
            }
        });
    });
});