0

我正在尝试在网页上显示数据库查询的结果。我正在使用下面的 JQUERY 脚本通过 php 脚本将数据作为 JSON 数组获取。

由于某种原因,我无法弄清楚,网页。为空白。请注意,警报显示数据正在正确传递给 $.each 循环。

谁能告诉我我做错了什么??

谢谢克里斯
_

查询脚本

功能项目数据(){

var data = '';

    $.ajax(
    {
        url:"projectdata.php", 
        type: "POST",
        dataType: 'JSON',
        cache: false,
        success:function(data)
        {
            $( "#projectList" ).insertAfter('<tbody>' + 

                $.each(data, function(indx, value) 
                {
                    '<tr><td>' + data[indx].project_id + '</td>' +
                    '<td>' + data[indx].dept + '</td>' +
                    '<td>' + value.projName + '</td>' +
                    '<td>' + data[indx].notes + '</td>' + 
                    '<td>' + data[indx].dates + '</td>' +
                    '<td>' + data[indx].status + '</td>' +
                    alert("ID: " + value.project_id + "   " + "DEPT: " + data[indx].dept);
                } //end function
                ) //end each
                ) //end After

        } //end success
    }); //end ajax

} //结束项目数据


HTML 脚本

现有项目:

&lt; table id="projectList">    
&lt; thead>  
&lt; tr class="success">   
&lt; th class="span1">PROJECT ID &lt; /th>  
&lt; th class="span2">SCHOOL / DEPT &lt; /th>  
&lt; th class="span1">PROJECT &lt; /th>  
&lt; th class="span3">DESCRIPTION / PROJECT NOTES &lt; /th>  
&lt; th class="span1">APPROX DATES &lt; /th>  
&lt; th class="span1">STATUS &lt; /th>  
&lt; th class="span1">USER</th> &lt; /tr>  
&lt; /thead>  
&lt; tbody>  
&lt; !-- RESULTS FROM JQUERY/PHP GOES HERE -->  


&lt; /tbody>  
&lt; /table>
4

3 回答 3

3

您有语法错误

$( "#projectList" ).insertAfter('<tbody>' + 

$.each(data, function(indx, value) 
{
   '<tr><td>' + data[indx].project_id + '</td>' +

这没有任何意义

也许这就是你想做的

var result = "";
$.each(data, function(indx, value) 
{
   result += '<tr><td>' + data[indx].project_id + '</td>' +
                '<td>' + data[indx].dept + '</td>' +
                '<td>' + value.projName + '</td>' +
                '<td>' + data[indx].notes + '</td>' + 
                '<td>' + data[indx].dates + '</td>' +
                '<td>' + data[indx].status + '</td></tr>';
}
$("#projectlist").insertAfter('<tbody>' + result + '</tbody>');
于 2012-11-22T15:17:44.380 回答
0
'<tbody>' + $.each(data, function(indx, value) 

在此代码中,您将字符串与函数连接起来

尝试先使用 $.each 创建 html,然后将其放入 tbody

var result = "";

$.each(data, function(i, val){

   result += "<tr><td>" + val.project_id + "</td></tr>";

})

$( "#projectList tbody" ).html(result);
于 2012-11-22T15:22:52.197 回答
0

将您的 insertAfter 更改为附加:

           $( "#projectList" ).append('<tbody>' + 

                '<tr><td>' + data[indx].project_id + '</td>' +
                '<td>' + data[indx].dept + '</td>' +
                '<td>' + value.projName + '</td>' +
                '<td>' + data[indx].notes + '</td>' + 
                '<td>' + data[indx].dates + '</td>' +
                '<td>' + data[indx].status + '</td>' 
            );

警报在那里做什么?没有得到身份证。

于 2012-11-22T15:23:45.973 回答