将动态HTML表脚本响应从PHP文件传递到AJAX到div

时间:2014-02-13 17:32:07

标签: javascript php jquery html ajax

我有问题。 我想要发生什么: 1.单击表字段时创建弹出div。 (/) 2.将项目放在PHP文件的弹出div中,该文件回显另一个包含信息的表。 () 帮帮我。 ()

所以我有这个简单的jQuery来处理某个表字段的点击(特别是第一列),里面是一个ajax请求,它从schedule_class.php发送和获取数据。但我希望将schedule_class的回声插入到我的div中,并将light作为id。

MY AJAX SPLICE:

$.ajax({
    type:"POST",
    url: "schedule_class.php",
    dataType:"json",
    data: dataString,
    success: function(data)
    {
         $("#pop").html().load('/sched_class.php');
    },
});

我的DIV

<div id="pop"></div>

SCHEDULE_CLASS.PHP

<?php
include("connect.php");
session_start();
$toggle = $_POST['toggle'];
$sub_code = $_POST['pe_code'];

if($toggle == 0)
{
    $_SESSION['pe_code'] = $sub_code;
    $response['status'] = $sub_code;

    echo // this echo should have been in the pop-up div
    '<table class="tbl_sched" align="center" style="position:absolute;width:95%;">'.
    '<thead class="tbl_sched_row_title">
        <tr>
            <td style="padding:3px 20px"><b>'."CODE".'</b></td>
            <td style="padding:3px 50px"><b>'."SUBJECT".'</b></td>
            <td style="padding:3px 50px"><b>'."STUDENT".'</b></td>
            <td style="padding:3px 30px"><b>'."STUDENT#".'</b></td>
            <td style="padding:3px 15px; margin-right: 20px;"><b>'."COLLEGE".'</b></td>
        </tr>
    </thead>
    <tbody class="tbl_sched_row" style="height:inherit">';

...
...

?>

我相信它应该有效。但事实并非如此,我错了。请帮我。提前谢谢。

2 个答案:

答案 0 :(得分:0)

你告诉jquery你期待'json'数据作为回报,但是你回复了一串html,你也没有使用从PHP脚本传回的data变量到你的success回调。

$.ajax({
    type:"POST",
    url: "schedule_class.php",
    dataType:"json",
    data: dataString,
    success: function(data)
    {
         $("#pop").html(data.html);
    },
});

将html字符串保存到变量,然后使用json_encode .... /。php:

进行回显
$html = 
    '<table class="tbl_sched" align="center" style="position:absolute;width:95%;">'.
    '<thead class="tbl_sched_row_title">
        <tr>
            <td style="padding:3px 20px"><b>'."CODE".'</b></td>
            <td style="padding:3px 50px"><b>'."SUBJECT".'</b></td>
            <td style="padding:3px 50px"><b>'."STUDENT".'</b></td>
            <td style="padding:3px 30px"><b>'."STUDENT#".'</b></td>
            <td style="padding:3px 15px; margin-right: 20px;"><b>'."COLLEGE".'</b></td>
        </tr>
    </thead>
    <tbody class="tbl_sched_row" style="height:inherit">';

echo json_encode(array( 'html' => $html ));

答案 1 :(得分:0)

如果你想从php添加Echoed数据,那么你可以简单地将DATA添加到html元素,如下所示

success: function(data)
{
     $("#pop").html(data.html);//if you echo the data normally(without JSON) then no need of '.html'
}