0

私のWebサイトページの1つに、削除ボタンのように機能するリストがありますが、ユーザーがクリックしたときに、送信ボタンのようにphpスクリプトを呼び出すことができるかどうか疑問に思いました。

リストは次のとおりです。

<li>
    <a class="actions_dropdown" href="#">&nbsp;</a>
    <ul class="actions_content">
        <li><a href="#">Delete</a></li>
        <li><a href="#">Report</a></li>
        <li><a href="#">Mark as Read</a></li>
        <li><a href="#">Mark as Unread</a></li>
        <li><a href="#">Move to Folder 1</a></li>
        <!----whole loop of folders--->
    </ul>
</li>

とにかく、ユーザーがクリックしたときに、phpスクリプトを呼び出すdeleteliと言ってください。うまくいかないようです。

4

2 に答える 2

1

Deleteあなたの好きな人にクラスを割り当てる

<li><a class="actions_dropdown" href="#">&nbsp;</a>
                <ul class="actions_content">
                    <li class="del"><a href="#">Delete</a></li>
                    <li><a href="#">Report</a></li>
                    <li><a href="#">Mark as Read</a></li>
                    <li><a href="#">Mark as Unread</a></li>
                    <li><a href="#">Move to Folder 1</a></li>
                    <!----whole loop of folders--->
                </ul>
               </li>

クリック イベント ハンドラーをliwith クラスにアタッチします。del

$("li.del").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"; 
}        
 $.post('/test.php',{'db[]':db},function(data){    
 console.log(data);//it should log data deleted successfully     
 });    
});

test.php で

<?php

 //delete logic here
 echo json_encode("data deleted successfully");

?>

複数のチェックボックス値のポスト配列

于 2012-08-12T11:45:48.223 に答える
0

アンカーhrefを PHP ページに設定するだけで済みますが、現在のページから移動するか、現在のページをリロードする標準的なフォーム送信と同様に (PHP が返す内容によって異なります)。

したがって、おそらく Ajax リクエストを作成したいと思うでしょう。標準のフォーム送信とは異なり、Ajax は現在のページをリロードせず、応答を JS コードに返します。

li またはアンカー要素 (例: id="deleteLink") に id を追加するか、それ以外の方法で識別できると仮定すると、Ajax を実行するクリック ハンドラーをバインドできます。

$("#deleteLink").click(function(e) {
    e.preventDefault();

    $.ajax({
       url: "yourPHPpageHere.php",
       data: { paramName1 : paramValue, paramName2 : paramValue2 },
       dataType : "json"   // or "html", "xml", or "text", whatever your PHP returns
    }).done(function( response ) {
       // optionally do something with response.
    });
});

削除 PHP に渡す必要があるデータ (おそらく、最低限のレコード ID のようなもの)は、呼び出しのdataパラメーターで設定できます。$.ajax()

$.ajax()メソッドの詳細については、 jQuery docoを参照してください。

于 2012-08-12T11:46:09.940 に答える