1

你好我还有一个问题。我正在创建一个管理系统。我添加了用户注册和删除功能。现在我需要做一个好的设计。

所以我从 MySQL 数据库创建了一个表,其中包含以下信息:ID、用户名、上次登录和删除。

这是我打印表格的 php 代码的提取:

echo "<td class=\"center\">
            <a href=\"#\" class=\"delete_user\">
                <img src=\"images/delete.png\" />
                <script type=\"text/javascript\">
                    var id = \"index.php?section=user_delete&id=".$getUserID[$i]."\";
                </script>
            </a>
        </td>

如您所见,我将 ID 用于删除过程。

现在我想使用一个 jQuery 模态弹出窗口来确保我真的想删除这个人。

这是我的 js 代码:

$(".delete_user").click(function() {
    $( "#dialog_delete_user" ).dialog( "open" );
});

$( '#dialog_delete_user' ).dialog({
    autoOpen: false,
    resizable: false,
    height: 170,
    modal: true,
    buttons: {
        'ok': function() {
            alert(id);
            //document.location = id; 
            $( this ).dialog( 'close' );
        }
    }
});

如您所见,我需要添加一个变量 id 来识别此人并确保删除正确的人。

我认为只有单击链接才会执行 javascript。这似乎是不正确的。

那么我如何定义/识别每个人呢?

显示的表格是无用的,因为无法识别每个删除按钮及其所有者。所以我必须在我创建表格的地方定义它。

如果没有这个 jQuery 模态表单,它会很容易。但必须有办法让它发挥作用。任何的想法?

4

1 回答 1

1

就我个人而言,我会在打开对话框的链接上设置一个属性,例如

<a href="bla" data-user-id="5">Click me!</a>

然后在打开对话框的链接的 onclick 事件中,我会将对话框的隐藏用户字段设置为 $(this).data("user-id"); 如果你不做一个表单,只是立即触发一个 ajax 请求,它会变得更容易。

var currentUserId;
$(".delete_user").click(function() {
    currentUserId = $(this).data("user-id");
    $( "#dialog_delete_user" ).dialog( "open" );
});

$( '#dialog_delete_user' ).dialog({
    autoOpen: false,
    resizable: false,
    height: 170,
    modal: true,
    buttons: {
        'ok': function() {
            //document.location = "/somephpfile.php?user_id=" + currentUserId; 
            $( this ).dialog( 'close' );

            // ajax version
            $.ajax({
                url : "/somephpfile.php?user_id=" + currentUserId,
                // Other ajax related code.
            });
        }
    }
});
于 2012-05-15T20:39:04.330 回答