jQuery - 我需要对从Ajax收集的数据使用Ajax

时间:2015-05-07 05:51:20

标签: javascript php jquery mysql ajax

所以这就是我正在做的事情。 我正在使用DataTables插件,以及巨大的弹出插件。我正在尝试做的是,有一个用户表,从数据库动态加载,并加载到DataTables表中。每行中都有指定用户的链接。现在,我正在尝试做的是,当您单击链接而不是转到另一个页面时,它会创建一个包含数据的弹出窗口。它不起作用。我调试了它,而我所看到的是,数据是从数据库中提取的,通过ajax,弹出插件,没有看到数据。有办法解决这个问题吗?我试图让它尽可能高效,并减少服务器上的CPU负载,所以..

<table id="player_table" class="display">
    <thead>
        <tr>
            <th>ID</th>
            <th>Username</th>
            <th>Last IP</th>
            <th>Total Commands</th>
            <th>Total NPC Clicks</th>
            <th>Total Object Clicks</th>
            <th>Total Item Clicks</th>
            <th>Last Trade</th>
            <th>Details</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>142</td>
            <td>Dayghost</td>
            <td>127.0.0.1</td>
            <td>325</td>
            <td>568</td>
            <td>1433</td>
            <td>12503</td>
            <td>16:42</td>
            <td><a href="player.php?id=2" class="popup">more Info</a></td>
        </tr>
    </tbody>
</table>

这个表是动态加载的,里面有150个随机的whatevers。

以下是收集数据的ajax。

$('#player_table').dataTable({
    "processing": true,
    "serverSide": true,
    "ajax": "serverside/handler.php"
});

这是弹出模块

$('.popup').magnificPopup({
    midClick: true,
    type: 'ajax'
});

弹出模块仅在页面制作时加载数据IF且仅if。它不适用于通过ajax收集的数据。我在测试按钮上测试了这个。

我编辑了.popup class

的用法

2 个答案:

答案 0 :(得分:1)

我明白了。

我把功能..

$('.popup').magnificPopup({
    midClick: true,
    type: 'ajax'
});

进入DataTables中的onComplete设置。

答案 1 :(得分:0)

虽然我在代码中看不到任何带有file类的html元素(?)我猜你需要做的是在<<>后面调用 / strong>您的内容已生成。

活动顺序如下:

  • 页面加载了静态数据
  • Magnific初始化页面上当前的数据
  • 使用AJAX刷新数据
  • Magnific不再与页面上的任何元素绑定,因此需要重新初始化

这就像调用:

一样简单
.popup

加载AJAX内容后。