Php AJAX悬停工具提示仅显示表中第一行的返回数据
我使用AJAX将数据发送到PHP页面,数据从MySQL获取。将鼠标悬停在Php AJAX悬停工具提示仅显示表中第一行的返回数据,php,html,ajax,Php,Html,Ajax,我使用AJAX将数据发送到PHP页面,数据从MySQL获取。将鼠标悬停在.payoudata类上,将其数据id值发送给PHP,并获取结果。它使用显示,但它仅显示与第一条记录相关的结果 以下是生成表的PHP代码: 下面是获取和显示工具提示的jQuery代码: $('.payoudata')。悬停(函数(){ var paydata=$(this.attr(“数据id”); $.ajax({ 类型:'post', url:'payout-emp-data.php', 数据:{paydata:pa
.payoudata
类上,将其数据id
值发送给PHP,并获取结果。它使用
显示,但它仅显示与第一条记录相关的结果
以下是生成表的PHP代码:
下面是获取和显示工具提示的jQuery代码:
$('.payoudata')。悬停(函数(){
var paydata=$(this.attr(“数据id”);
$.ajax({
类型:'post',
url:'payout-emp-data.php',
数据:{paydata:paydata},
成功:函数(paydataresult){
$('#PayoutData').html(paydataresult);
}
});
});
我在这
当我尝试查看第二条记录时,它正在发送数据并获得结果,但无法显示,如下面的屏幕截图所示。显示返回数据的潜在方式是什么
第一条记录截图:
第二条记录截图:
您为每一行生成一个具有相同id(PayoutData)的div,因为id属性应该是唯一的$(“#PayoutData”).html(paydataresult)将始终获取第一个 在PHP中尝试以下方法:
<?php while($srow = $stm->fetch(PDO::FETCH_ASSOC)){
$rowId = $srow['application_no'];
?>
<tr>
<td id="tooltip1">
<a href="#" class="payoudata" data-id="<?= $rowId ?>"><?= $rowId ?>
<span>
<div id="PayoutData<?= $rowId ?>"></div>
</span>
</a>
</td>
</tr>
<? } ?>
必须是唯一的
id属性为元素分配一个唯一标识符(可以由SGML解析器进行验证)
要解决这个问题,您需要使用类而不是ID
替换此项:
$('#PayoutData').html(paydataresult);
作者:
这一行:
<div id="PayoutData">
作者:
如果您尝试手动执行请求,是否会返回所有行?您还可以包含脚本生成的一些html代码吗?只是为了确保问题出在后端。。你能把paydataresult
varaible转储到你的前端吗?是的,我得到了结果,请看刚才添加的屏幕截图好的!而且比我的容易。恭喜!回答得很好。很乐意帮忙:-)
$('.PayoutData', $(this)).html(paydataresult);
<div id="PayoutData">
<div class="PayoutData">