[英]decode json as html
因此,我正在构建一个Web应用程序,并且我有一个Ajax请求来ping数据库(或数据库缓存)并回显json的大事。 我对json完全陌生,当php从数据库中提取时,我回显json_encode($ databaseResults),然后它在我的html页面中显示为长字符串。 我的问题是,如何将其转换为所需格式并将其提取出来?
谢谢!
页面中的Json结果如下所示:
“[{\\” currentcall \\ “:\\” 1 \\” \\ “timecalled \\”:\\ “15:30 \\”,\\ “etaTime \\”:\\ “15时35 \\”,\\ “DepartmentID的\\”:\\ “ 1 \\”,\\“ memberID \\”:\\“ 1 \\”,\\“ callinnum \\”:\\“ 1 \\”,\\“位置\\”:\\“ Fire House \\”,\\“开票\\”:\\“ ñ\\ “\\ ”日期\\“:\\ ”2 \\\\ / 12 \\\\ / 11 \\“,\\ ”名字\\“:\\ ”菲尔\\“,\\ ”姓氏\\“:\\ ”ASDF \\“,\\”电子邮件\\ “:\\” pasdf@gmail.com \\ “\\ ”HOMEPHONE \\“:\\ ”+ 19111111111 \\“,\\ ”手机\\“:\\ ”+ 11234567891 \\“,\\ ”cellphone2 \\“:空,\\” workphone \\“:null,\\” phonenumber5 \\“:null,\\” phonenumber6 \\“:null,\\” streetAddress \\“:\\” 10 asdfnt Dr \\“,\\” city \\“:\\” \\“,\\”用户名\\ “:\\” pgsdfg \\”,\\ “密码\\”:\\ “0623ab6b6b7dsasd3834799fbf2a08529d \\”,\\ “管理员\\”:\\ “Y \\”,\\ “资格\\”:\\ “内部\\”,\\ “等级\\” :空,\\ “CPR \\”:空,\\ “EMT \\”:空,\\ “培训\\”:空,\\ “datejoined \\”:空,\\ “dateactive \\”:空,\\ “状态\\”:\\ “DE \\”,\\ “拉链\\”:\\ “51264 \\”,\\ “未决\\”:\\ “否\\”,\\ “defaultETA \\”:\\ “7 \\” \\ “设备\\”:\\“asdKE -286 \\ “}]”
可能有多个结果...这只是一个结果
编辑:
基本上,我试图将数组中的一堆行传递到html文件中,并仅取出所需的数据并对其进行格式化。 我不知道json是否是执行此操作的最佳方法,只是我想到的一种解决方案。 因此,如果有人有更好的解决方案,那就太好了。
Edit2:这是我发出请求的jQuery,PHP仅具有echo json_encode($ DBResults);
function getResponder(){
var responders = $.ajax({
type : "POST",
url: "/index.php/callresponse/get_responders",
success: function(html){
$("#ajaxDiv").html(html);
}
});
setTimeout("getResponder()", 10000);
}
当您将其标记为jquery时,我假设您正在使用jQuery。 如果只想获得一个字符串,则可以跳过json部分,并使用jQuery .load(),像这样$('#result').load('ajax/test.php');
会将ajax / test.php中的内容加载到#result中
但是,如果要使用json,可以查看jQuery文档上的getJSON 。 您还可以使用jQuery parseJSON函数 ,该函数将为json返回一个包含jsonData的javascript对象。
这是一个如何使用parseJSON的示例
var object = $.praseJSON(jsonString); //jsonString is the string containing your actual json data
alert(object.location) //Will alert "Fire House" with the given json string
这是如何以相同方式使用getJSON的示例
$.getJSON('ajax/test.php', function(object) {
alert(object.location); //Will alert "Fire House" with the given json string
});
如果您也想传递参数,可以这样
$.getJSON('ajax/test.php',
{
Param1 : "Value1",
Param2 : "value2"
},
function(object) {
alert(object.location); //Will alert "Fire House" with the given json string
}
);
如果您尝试将json从javascript发送到php,则可以使用
$jsonArray = jsonDecode($_GET['key']);
当然,如果您使用的是post,则应改写$ _POST。
您必须将数据解析为JSON对象,然后可以根据需要使用对象的属性。
在不了解细节的情况下,我可以告诉您,您将需要使用JSON对象来解析文本。 在此处查看更多信息: http : //www.json.org
var obj = JSON.parse(ajaxResponseText);
您应该使用php函数json_decode ,它将为您提供具有所有属性的对象或数组。
然后,您应该递归地遍历此对象,并将属性的内容添加到字符串中,该字符串应该是最终的HTML。
通常,要通过Web请求在jQuery( 例如 )之后的html元素中显示JSON响应 ,请尝试以下操作:
$("#box-content-selector").append(
"<pre>"+
JSON.stringify(JSON.parse(data), null, 4)+
"</pre>"
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.