-1

私は自分のページにボタンを表示しようとしていますが、これは最終的には削除ボタンとして機能します。ただし、これは<li>要素であり、フォームなどの平均的な送信ボタンではないため、処理するすべての変数を送信するにはajaxを使用する必要があります。現時点では、変数を処理できる状態にしたいだけです。 、しかし現時点では、私のスクリプトは私が望むような値を返さず、それらを出力していないようです。

うまくいけば、以下のコードから私が何を意味するのかがわかります。現時点で必要なのは、チェックボックスからすべての値を選択してmail_trash.phpに送信し、それを送り返して出力することだけです。配列、ちょうど私がそれが適切な値などを選択しているのを見ることができるように...実際の削除phpコードはすでに書かれていて機能しています、これはAjaxをチェックするためだけです。

これがjavascriptとajaxです

    <script>
        $("document").ready(function (){ 

           $("li.trash").click(function(e){  
                 var db = $(':checkbox:checked').map(function(i,n) {
                    return $(n).val();
                 }).get(); //get converts it to an array

             if(db.length == 0) { 
             db = "none"; 
           }        

    $.ajax({
            type: "GET",
            url: "mail_trash.php",
            data: {'db[]':db  },
            dataType: "json",
            statusCode: {
                200: function (response) {
                                                                                           $("#mail_header_name").html(response.mess_id);

                                         }

            }
        });
    });

});


</script> 

そして、これがmail_trash.phpのスクリプトです。

  <?php

    include 'connect_to_mysql.php';

    $mess_id = $_GET["db"];
    echo json_encode($mess_id);


?>

そして、物事をチェックするためだけに

  • ボタン

    <li><a class="trash" href="">&nbsp;</a></li>
    

    あなたの助けを本当にありがとう、これはここ数時間私を悩ませてきました。

  • 4

    2 に答える 2

    4

    li.trashではありません。ゴミ箱は要素のクラスであるため、これはa.trashです。そのため、jsの最初の3行は次のようになります。

       <script>
        $("document").ready(function (){ 
    
           $("a.trash").click(function(e){  
    

    その後、残りのコードについても同様です。$(':checkbox:checked')は正しいjqueryだとは思わないので、私はあなたのコードの残りの部分を必ずしもチェックしていません。私が言及した最初のセレクター、jquery docsで2番目をチェックしてから、コードをjshinting/jslintingします。(Javascriptのみ)

    于 2012-08-13T00:53:08.090 に答える
    1

    質問自体のタイプミスなのか、スクリプトの問題なのかはわかりませんが、受け渡し中のパラメータの名前は「db」ですが、サーバー側では「mess_id」が必要です。

    于 2012-08-12T23:20:15.917 に答える