我正在使用jquery iframetransport(用于blob上传),并被迫通过data.responseText访问我的回复。我可以从我的PHP中嵌入简单的JSON,例如
echo json_encode(array("response"=>"hello"));
我的控制台日志将返回
{"response" : "hello"}
但我需要div并从我的PHP请求中连接数据。如果我试图嵌入这个,我马上就失败了:
echo json_encode(array("response"=>"<div>hello</div>"));
我最终得到了
{"response":"hello<\/div>"}
如何在resposneText中使用这种json数据?
答案 0 :(得分:2)
或者,您可以将htmlentities()
强制转换为响应数组。像这样:
echo json_encode(array('response' => htmlentities('<div>hello</div>')));
// {"response":"<div>hello<\/div>"}
exit;
在检索响应时,由于您需要JSON,请添加dataType:
属性:
$.ajax({
url: 'blahblah.php',
dataType: 'JSON', // this one
});