0

ajax を使用してデータを php スクリプト (showitemid.php) に投稿し、同じスクリプト (showitemid.php) をハイパーリンク クリックのシックボックスですぐに開き、投稿されたデータを表示する方法。以下は私のコードです:

postitemid.php

このファイルは複数のチェックボックスで構成されています。ユーザーはチェックボックスにチェックを入れ、ハイパーリンクをクリックします。ハイパーリンクをクリックすると、選択されたすべてのチェックボックスの値が showitemid.php にポストされ、すぐに showitemid.php がシックボックスで開き、受け取った値が表示されます。しかし、コードで値を受け取っていませんか? 助けが必要。

$('#showitem).click(function()
{
    var data = $('input:checkbox:checked').map(function()   {
        return this.value;
    }).get();

    $.ajax({type: 'POST', 

             url: 'showitemid.php',
             data: data,success: success,dataType: dataType});
        });

showitemid.php

$data = ''; 

if (isset($_POST['data']))
{
    $data = $_POST['data'];
}
elseif (isset($_GET['data']))
{
    $data = $_GET['data'];
}


echo 'd='.$data;
4

2 に答える 2

0

元のコードの主な問題は、送信されるデータdataに一致する名前のキーがない$_POST['data'])ため$_POST['data'])、空であることです。キーと値のペアを送信する必要があります。キーのない値のみを送信しています。同じ変数名を常に使用しているため、少し混乱している可能性があります

var dataArray = $('input:checkbox:checked').map(function()   {
        return this.value;
    }).get();

var dataToServer= { data : dataArray} /* now have the key to match $_REQUEST in php */

AJAX 短縮形を使用load()してコンテンツを入力できるようになりました

$('#myContainer').load( "yourfile.php", dataToServer, function(){
/* new html exists run open thickbox code here*/
})
于 2012-10-27T13:34:09.357 に答える
0

このようなものを使用してください

  $('#showthickbox').click(function()
{
    var data = $('input:checkbox:checked').map(function()   {
        return this.value;
    }).get();//your code

    $.post("showitemid.php",{data:data},function(data){
       $("#thickbox").html(data);
      }) 
    })
})

あなたのshowitemid.php

echo "your data";
于 2012-10-27T13:23:25.580 に答える