Php 使用javascript在页面上显示JSON数据
我最终成功地通过AJAX传递数据并以JSON格式返回。然而,现在我不知道如何在我的页面上显示它 这是我的JS:Php 使用javascript在页面上显示JSON数据,php,ajax,json,jquery-ui,codeigniter,Php,Ajax,Json,Jquery Ui,Codeigniter,我最终成功地通过AJAX传递数据并以JSON格式返回。然而,现在我不知道如何在我的页面上显示它 这是我的JS: $(function() { $( "#selectable" ).selectable({ selected: updatefilters, unselected: updatefilters }); function updatefilters(ev, ui){ // get the selected f
$(function() {
$( "#selectable" ).selectable({
selected: updatefilters,
unselected: updatefilters
});
function updatefilters(ev, ui){
// get the selected filters
var $selected = $('#selectable').children('.ui-selected');
// create a string that has each filter separated by a pipe ("|")
var filters = $selected.map(function(){return this.id;}).get().join("\|");
$.ajax({
type: "POST",
url: 'updatefilters',
dataType: 'json',
data: { filters: filters },
success: function(data){
$('#board').replaceWith(data.content);
}
});
}
});
在我的模型运行后,它与firebug中发现的以下内容相呼应:
[{"thread_id":"226","owner_id":"1","subject":"trying to create a HUGE body for thread testi","body":"Firstly, I think 45 characters is perfect for the heading. \n\nHowever, once the body gets huge, I assume that the \"preview\" is going to get a bit out of hand if not truncated. I have truncated code in place...but it doesn't seem to be working.\n\nI'll have to keep testing to ensure we can get it shrunk down to a few hundred characters so as to not completely screw up the page format\n\nyadda yadda yadda...yadda yadda yadda...and more yadda yadda yadda...\n\nBabble Babble Babble Babble Babble \n\nBabble Babble Babble ","timestamp":"2012-05-02 15:29:19","replystamp":"2012-05-02 15:29:53","last_post_id":"1","slug":"226-trying-to-create-a-huge-body-for-thread-testi","replies_num":"1","views":"19"},{"thread_id":"219","owner_id":"3","subject":"testing icons","body":"hellow world","timestamp":"2012-05-01 11:37:08","replystamp":"2012-05-01 11:37:08","last_post_id":"3","slug":"219-testing-icons","replies_num":"0","views":"3"},{"thread_id":"212","owner_id":"1","subject":"This thread is based off entertainm","body":"Yay","timestamp":"2012-04-25 14:07:55","replystamp":"2012-04-25 14:07:55","last_post_id":"1","slug":"212-this-thread-is-based-off-entertainment","replies_num":"0","views":"4"}]
任何关于如何用返回的JSON数组中的数据替换div“board”的建议都会非常有用 假设您希望在包含主题和正文的表格中显示数据。你可以这样写:
success: function(data){
$.each(data, function(index, value) {
$('#board').append(index + ': ' + value + '<br/>');
});
}
success: function(data){
var html = "<table>";
for (i=0 ; i< data.length ; i++)
{
html += "<tr><td>" + data[i].subject + "</td><td>" + data[i].body + "</td></tr>";
}
html += "</table";
$('#board').html(html);
}
var template = "{{#item}}<tr><td>{{subject}}</td><td>{{body}}</td></tr>{{/item}}";
var html = "<table>" + mustache.render(template, data) + "</table>";
$("#board").html(html);
成功:函数(数据){
var html=“”;
对于(i=0;i html+=“谢谢!它终于做了些什么。虽然它返回了以下内容:0:[object]1:[object]2:[object object]你能给出一个关于成功的console.log(数据)并将firebug打印的内容粘贴到这里吗?我相信它显示的内容与我在问题中发布的内容相同(第二篇代码帖子).我是firebug的新手,不知道如何完成您的提问。我最初有一个视图,显示直接从mySQL查询中获取的数据。有没有人可以使用该视图显示这些数据?它有很多HTML…而且将其放入javascript听起来非常困难。
var template = "{{#item}}<tr><td>{{subject}}</td><td>{{body}}</td></tr>{{/item}}";
var html = "<table>" + mustache.render(template, data) + "</table>";
$("#board").html(html);