jquery callback html and json



我有一些jQuery,它将变量传递到php文件,php文件根据这些要传递回的变量生成动态html内容,然后用于更新页面。

然而,我也想返回一些变量,这样我就可以决定如何以及在哪里显示html内容。

到目前为止,我发现的唯一方法似乎有点粗糙,我相信还有更好的方法。

目前,php文件将生成的内容放在一个类似的标签中

<content>CONTENT HERE</content>

然后,我对我也想返回的var使用另一个标记。

<json>{"name" : "value"}</json>

然后我在ajax回调上有这个

content = $(data).find('content').html();
json = $(data).find('json').text();

我建议您使用json输出,而不是混合xml/json。

在php中

$output=array(
'content'=> $htmlVariable,
'data'=> $resultsArray
);
echo json_encode($output);

然后在js:中

$.getJSON('path/to/server',{/* data if applicable*/}, function(response){
var content = response.content;
var data = response.data;
});

通过这种方式,jQuery将为您管理json字符串解析。

您可以将想要的任何html分配给对象属性或数组,json_encode将负责所有必要的转义

最新更新