使用从服务器接收的json数据填充html div

时间:2014-06-13 07:11:30

标签: javascript jquery ajax json json-rpc

我需要一个html div填充从服务器收到的json数据,这是一个json-rpc服务器,它重新运行一个application / jsson-rpc内容类型,我可以在chrome和firefox开发工具中看到结果...我需要将其视为给定div中页面的一部分

我有这个脚本来填充mybox div,但它没有提供任何内容

    var returnedinfo;
    var request = $.ajax ({
    url: "/url",
    type: "POST",
    data: JSON.stringify(data),
    success: function(json) {
      alert("success sent ajax");
         $("#mybox").html(json); 
         returnedinfo = json;               
   });

当请求完成时,我还在ajax块之外添加了填充函数

request.done(function(msg) {
         $("#mybox").text(msg);
       });

这只是返回一个像这样的空数组

 [object Object]

并且没有任何其他帮助将不胜感激。

3 个答案:

答案 0 :(得分:1)

将dataType添加到您的ajax请求中。

var request = $.ajax ({
url: "/url",
type: "POST",
data: JSON.stringify(data),
dataType: "json",
success: function(json) {
  alert("success sent ajax");
     $("#mybox").html(json); 
     returnedinfo = json;               
});

答案 1 :(得分:1)

您需要附加json项目的key

$("#mybox").html(json.key);

答案 2 :(得分:1)

试试这个我的工作示例 查看 contentType html函数来替换mybox元素的html

$.ajax({
    type: 'POST',
    data: JSON.stringify(data),
    contentType: "application/json; charset=utf-8",
    url: 'url',
    success: function (dataRes) {
                $('#mybox').html(dataRes);

              },
    error: function(a,b,c) {

    }
});

请注意,在这种情况下,success函数中的 dataRes 是一个html字符串,如<strong>test</strong>

如果您的服务器端函数返回一个json对象,您应该将dataType: 'json'添加到a​​jax请求,然后您可以使用 dataRes 对象的属性,例如{{1} }