0

私の質問は、ユーザー名を確認ポップアップにプルする方法です...私の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> 

ポップアップする次のmootoolsコードと、ユーザーが本当にユーザーを削除したいかどうかを確認する確認があります

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

3 に答える 3

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 をトラバースしてテキスト値を取得できます。

于 2009-08-03T19:55:55.920 に答える
2

HTML が常に上記のマークアップに従うと仮定すると、confirm()呼び出しは次のようになります。

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

これは、「削除」リンクの後の次の要素が、削除されるユーザー名を含む要素になるという事実に依存しています。

于 2009-08-03T19:53:16.550 に答える
1

素晴らしい答え。

私は個人的に、この種のことをHTML構造に依存しすぎないようにしているため、すべてのデータをオブジェクトまたはhtml要素(少数の場合)に格納する傾向があります。

1つ目は、今説明したいよりも少し深くなっています。

したがって、後者を行うには、htmlを吐き出すことができます。

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

その後、mootoolsで使用します

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

そうすれば、将来的にHTMLに対してやりたいことが何でもできます。Relはまだ有効なので、いいです。

于 2009-08-08T18:47:39.647 に答える