如何将json输出到div中

时间:2013-10-24 10:30:46

标签: php jquery html ajax json

考虑以下PHP块。我想将“name”输出到div#1并将“slog”输出到div#2

<?php 
require_once 'db_conx.php';
$Result = mysql_query("SELECT * FROM profiles ORDER BY lastupdated desc limit 1") or die (mysql_error());
while($row = mysql_fetch_array($Result)){
$result = array();
$result['name'] = $row['name'];
$result['slog'] = $row['slog'];
echo json_encode($result);
}
mysql_close($con);
?> 

这是只输出json本身的ajax。

var get_fb = (function() {
    var counter = 0;
    var $buzfeed = $('#BuzFeed');
    return function(){
        $.ajax({
            type: "POST",
            url: "../php/TopBusinesses_Algoriththm.php"
        }).done(function(feedback) {
            counter += 1;
            var $buzfeedresults = $("<div id='BuzFeedResult" + counter + "'></div>").addClass('flat-menu-button');
            $buzfeedresults.text(feedback);
            $buzfeed.append($buzfeedresults);
            var $buzfeedDivs = $buzfeed.children('div');
            if ($buzfeedDivs.length > 10) { $buzfeedDivs.last().remove(); }
            setTimeout(get_fb, 1000);
        })
    };
})();
get_fb();

2 个答案:

答案 0 :(得分:0)

您可以使用以下内容更新DOM元素的html /内容:

document.getElementById(name).innerHTML = "text";

所以在这个例子中:

document.getElementById('#1').innerHTML = $yourNameContent;
document.getElementById('#2').innerHTML = $yourSlogContent;

答案 1 :(得分:0)

首先:将var counter = 0;移到get_fb()函数之外; 第二:不要显式调用get_fb();,因为(function(){...})();在初始化后已经调用了方法。 第三:如果没有要提交的数据,为什么要使用POST方法呢?

所以,请执行此操作并尝试:

var counter = 0;
var $buzfeed = $('#BuzFeed');
var get_fb = (function() {
    $.ajax({
        type: "GET",
        url: "../php/TopBusinesses_Algoriththm.php"
    }).done(function(feedback) {
        counter += 1;
        var $buzfeedresults = $("<div id='BuzFeedResult" + counter + "'></div>").addClass('flat-menu-button');
        $buzfeedresults.text(feedback);
        $buzfeed.append($buzfeedresults);
        var $buzfeedDivs = $buzfeed.children('div');
        if ($buzfeedDivs.length > 10) { $buzfeedDivs.last().remove(); }
        setTimeout(get_fb, 1000);
    })
})();