1

次のようなPHPから生成されたページがあります。

<?php
    //In my original code, this is retrieved from databas..
    $users = array(
        array('id'=>1, 'login'=>'login1', 'email'=>'email1')
    );  
    foreach($users as $user){
        echo '<tr><td>'.$user['login'].'</td><td>'.$user['email'].'</td><td><button class="button-delete">Delete</button></td></tr>';
    }
?>

次に、前面に次のスクリプトがあります。

$('.button-delete').click(function(){
    var id=0;
    alert(id);
});

私の目的は、削除ボタンにajax呼び出しを実行させてユーザーを削除することです。今までまだそこにたどり着きませんでしたが、私の問題はユーザーIDを取得する方法ですか?

4

2 に答える 2

4

ボタンデータ内でIDを送信し、後で簡単に取得できます。

<?php
    //In my original code, this is retrieved from databas..
    $users = array(
        array('id'=>1, 'login'=>'login1', 'email'=>'email1')
    );  
    foreach($users as $user){
        echo '<tr><td>'.$user['login'].'</td><td>'.$user['email'].'</td><td><button class="button-delete" data-id="'.$user['id'].'">Delete</button></td></tr>';
    }
?>

$('.button-delete').click(function(){
    var id=$(this).data('id');
    alert(id);
});
于 2012-06-07T10:12:16.767 に答える
1

私は通常次のようなことをします:

<?php
    //note the change from button tag to anchor tag
    $users = array(
        array('id'=>1, 'login'=>'login1', 'email'=>'email1')
    );  
    foreach($users as $user){
        echo '<tr><td>'.$user['login'].'</td><td>'.$user['email'].'</td><td><a href="/link/to/delete/id/'.$user['id'].'/" class="button-delete">Delete</a></td></tr>';
    }
?>

そしてjQueryで

$(document).ready(function(){
    $('.button-delete').click(function(){
        var $this = $(this);
        //Make an AJAX request to the delete script using the href attribute as url
        $.get($this.attr('href'), function(response) {
            //Inside your php script echo out 1 if the delete was successful.
            if(response) {
                //remove the parent row
                $this.parents('tr').fadeOut(1000, function(){
                    $(this).remove();
                });
            }
        });
        return false;
    });
});

コードをテストしていませんが、動作するはずです。これを行うにはたくさんの方法があり、これが私の好ましい方法であることを覚えておいてください。私のポイントは、必ずしも個々の変数としてIDを必要としないということです。

于 2012-06-07T10:21:40.240 に答える