私はプライベート メッセージ システムを作成しています。同じクラスの div をエコーするように php を設定しましたが、id = を行 ID に設定しました。以下のコードを調べてください。
function Load()
{
$Connect = new mysqli("localhost", "root", "", "Data");
session_start();
$User = $_SESSION['Username'];
$Stats = 'SELECT * FROM Messages WHERE User="'.$User.'"';
if($Result = $Connect->query($Stats))
{
while($Row = $Result->fetch_assoc())
{
$From = $Row['FUser'];
$Date = $Row['Date'];
$Title = $Row['Title'];
$ID = $Row['ID'];
echo '<div id="'.$ID.'" class="String"><label class="TText" style="cursor:pointer;">From: ' . $From . ' - ' . $Date . ' - ' . $Title .'</label></div>';
}
}
}
私のJQuery:
$('.String').click(function()
{
var Msg = $('#MMsg');
var Back = $('#Back');
var Str = $('.String');
Str.fadeOut('fast', function()
{
Msg.fadeIn('fast');
Back.fadeIn('fast');
var ID = $('.String').attr('id');
$.ajax
({
url:'MLoad.php',
type:'POST',
data:{ID:ID},
dataType:'json',
success:function(MText)
{
$('#MMBox').html(MText.T);
}
});
});
});
var ID を警告すると、両方の div で同じ結果が得られますが、html では ID がそれぞれ異なります。つまり、両方のアラート ボックスで毎回最初の ID が表示されます。