Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery模板呈现JSON_Javascript_Jquery_Json_Jquery Templates - Fatal编程技术网

Javascript 使用jQuery模板呈现JSON

Javascript 使用jQuery模板呈现JSON,javascript,jquery,json,jquery-templates,Javascript,Jquery,Json,Jquery Templates,几天来,我一直在尝试使用jQuery模板进行一点JSON呈现,但没有成功。。。我希望比我更聪明的人能发现我的错误 因此,我的JSON数据返回类似以下内容: [{"pk": 1, "model": "blobs.blob", "fields": {"content": "hello"}}, {"pk": 2, "model": "blobs.blob", "fields": {"content": "goodbye"}}]; 然后,我尝试使用jQuery模板呈现JSON返回的每个项目: var

几天来,我一直在尝试使用jQuery模板进行一点JSON呈现,但没有成功。。。我希望比我更聪明的人能发现我的错误

因此,我的JSON数据返回类似以下内容:

[{"pk": 1, "model": "blobs.blob", "fields": {"content": "hello"}}, {"pk": 2, "model": "blobs.blob", "fields": {"content": "goodbye"}}];
然后,我尝试使用jQuery模板呈现JSON返回的每个项目:

var blob_template = '<p>${content}</p>';

$.template('blobTemplate', blob_template );

$.getJSON('/myurl/', function(data) {

    $('blobTemplate').empty();

    var blobs = data;

    $.tmpl('blobTemplate', blobs)
        .appendTo('div');
});
var blob_模板='${content}

'; $.template('blobTemplate',blob_模板); $.getJSON('/myurl/',函数(数据){ $('blobTemplate').empty(); var blobs=数据; $.tmpl('blobTemplate',blob) .附录(“div”); });
模板呈现良好,但没有来自${content}的数据。我没有收到任何错误或未定义的消息,但我不知道我哪里出错了?任何帮助都将不胜感激

更新:

好吧,为了避免使用不推荐的方法或其他脚本/插件,这是一种更好的方法吗

$.getJSON('/myurl/', function(data) {
    var blobs = [];

    $.each(data, function(i, data) {
        var blob_template = '<p>' + data[i].fields.content + '</p>';

        blobs.push(blob_template);
    });

    $(notes.join('')).appendTo('div');
});
$.getJSON('/myurl/',函数(数据){
var blobs=[];
$。每个(数据,函数(i,数据){
var blob_template=''+数据[i].fields.content+'

'; 推送(blob_模板); }); $(notes.join(“”)).appendTo('div'); });

这似乎导致数据[i]未定义:(

根据我对弃用模板插件的有限了解,它没有获取内容属性,因为它不是JSON对象集合中每个对象的顶级属性。我认为您的模板应该如下所示:

<p>
    {{each fields}}
        ${$value}
    {{/each}}
</p>

{{每个字段}}
${$value}
{{/每个}}


根据我对弃用模板插件的有限了解,它没有选择content属性,因为它不是JSON对象集合中每个对象的顶级属性。我认为您的模板应该如下所示:

<p>
    {{each fields}}
        ${$value}
    {{/each}}
</p>

{{每个字段}}
${$value}
{{/每个}}

您包括在内了吗?(因为jQuery.template是beta版)

你在那里做什么?
$('blobTemplate').empty();
?我认为你没有blobTemplate标签

您将
${content}
替换为
数据[i].content
,但您的内容字段位于
数据[i].fields.content
..中了吗?(因为jQuery.template是beta版)

你在那里做什么?
$('blobTemplate').empty();
?我认为你没有blobTemplate标签


您将
${content}
替换为
数据[i]。content
但您的内容字段位于
数据[i]中.fields.content
…?

您使用的是不推荐使用的jQuery模板插件还是jQuery UI开发人员使用的新模板功能?请指定您的
模板
部分我的模板基于以下内容:您使用的是不推荐使用的jQuery模板插件还是jQuery UI开发人员使用的新模板功能y UI?请指定您的
模板
部分我的模板基于以下内容:您说不推荐使用jQuery从JSON构建html模板有更好/更新的方法吗?请记住,这是一个简单的示例,实际版本需要为JSON返回中的每个项目构建20行html:(我之所以说不推荐,是因为它不再得到官方支持,正如页面上的通知所表明的:。我认为开发它的人现在正在开发JsViews,它基本上是“新的”模板:。因此,在进入模板并围绕模板构建一个大型项目之前,可能值得先检查一下。您说不推荐使用jQuery从JSON构建html模板有更好/更新的方法吗?请记住,这是一个简单的示例,实际版本需要为JSO中的每个项目构建20行htmlN return:(我说不推荐,因为它不再受到官方支持,正如页面上的通知所表明的:。我认为从事此工作的人现在正在处理JsViews,它基本上是“新”模板:。因此,在进入模板并围绕它们构建一个大项目之前,可能值得先检查一下。