2009-08-03 7 views
0

私の質問は、確認用ポップアップにユーザー名をプルする方法です。私のPHPがユーザーのリストを生成する方法を変更する必要がありますか、または親とユーザー名...もしそうなら、私はそれをどのように達成できますか?PHPとmootoolsに関する質問

私はcodeigniterを使用してPHPコードを作成し、基本的にユーザー名とユーザーを削除するリンクを一覧表示しています。

<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> 

私は、ユーザーが本当にあなたのHTMLは、常に上記のマークアップに続くと仮定すると、ユーザー

window.addEvent('domready', function() 
{ 
    $$('a.delete').addEvent('click', function(event) 
    { 
     if (!confirm("Are you sure you want to remove this user?")) 
     { 
      event.stop(); 
     } 
    }); 
}); 

答えて

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

getNext()を使用しないでください。get( "text")? –

+1

** @ Dimitar:**はい、訂正しました...昨日、多くのjQueryの質問に答えました。私はそれを私に中毒させました(私は通常、MooToolsの開発者です)。 –

2

を削除するかどうかを確認するためにポップアップ表示し、確認するために、次のMooToolsのコードを持っているあなたのconfirm()これは、「DELE後にその次の要素事実に依存

var username = $$(event.target).getNext().text; confirm("Are you sure that you want to delete " + username + "?");

:コールのようなものかもしれませんte 'リンクは削除されるユーザ名を含む要素になります。

1

偉大な答え。

個人的には、このようなことにHTML構造をあまりにも頼りすぎているので、私はすべてのデータをオブジェクトやhtml要素に保存する傾向があります。

最初は、今説明していると思うよりも少し深いです!そして、あなたが将来的にあなたのHTMLにやりたいことができ

<a href="..." class="delete" rel="Jamalia"> 

をして、あなたのMooToolsの中

var username = this.get('rel'); 

を使用しますので、あなたはHTMLを吐き出すている可能性が後者を行うには

。 Relはまだ有効なのでいいです。