我的问题是如何将用户名拉入确认弹出窗口...我是否必须更改我的php生成用户列表的方式,还是需要一些mootools编码来选择父级然后用户名...如果是这样我怎么能实现呢?
我的PHP代码使用codeigniter生成以下类似的东西,基本上列出了用户名和删除用户的链接。
<div class='item'>
<a href="http://localhost/nstrust/index.php/admin/users/delete/9" class="delete">Delete</a> <a href="http://localhost/nstrust/index.php/admin/users/view/9" class="view">Jamalia</a>
</div>
<div class='item'>
<a href="http://localhost/nstrust/index.php/admin/users/delete/13" class="delete">Delete</a> <a href="http://localhost/nstrust/index.php/admin/users/view/13" class="view">Timothy</a>
</div>
我有以下mootools代码弹出并确认用户是否确实要删除用户
window.addEvent('domready', function()
{
$$('a.delete').addEvent('click', function(event)
{
if (!confirm("Are you sure you want to remove this user?"))
{
event.stop();
}
});
});
答案 0 :(得分:3)
以下内容适用于您的标记:
$$('a.delete').addEvent('click', function(event) {
var username = $(event.target).getNext().get('text'); //The username is in the next tag.
if (!confirm("Are you sure you want to remove " + username + "?")) {
event.stop();
}
});
由于下一个链接包含用户名,因此您可以简单地遍历DOM并获取文本值。
答案 1 :(得分:2)
假设您的HTML始终遵循上面给出的标记,您的confirm()
电话可能是这样的:
var username = $$(event.target).getNext().text;
confirm("Are you sure that you want to delete " + username + "?");
这取决于“删除”链接之后的下一个元素将是包含要删除的用户名的元素。
答案 2 :(得分:1)
很棒的答案。
我个人不喜欢过于依赖我的html结构来处理这类事情,因此我倾向于将所有数据存储在一个对象中,或者存储在html元素上(在较少的情况下)。
第一个比我现在解释的更深入一点!
所以要做后者你可以把html吐出来:
<a href="..." class="delete" rel="Jamalia">
然后在你的mootools中使用
var username = this.get('rel');
然后,您可以在将来对HTML进行任何操作。 Rel很好,因为它仍然有效。