Javascript 使用jQuery编写HTML

Javascript 使用jQuery编写HTML,javascript,jquery,html,object,feed,Javascript,Jquery,Html,Object,Feed,我正在尝试使用从另一个站点接收的数据创建一个“提要”。它以类似对象的数组形式出现。我尝试了几种显示数据的方法,但一直在改变主意,选择最好的方法。目前我正在使用jQuery循环遍历对象,并通过嵌套$().html() 与我以前使用的纯javascript方法相比,这使用的代码要少得多,但我不确定这是否是jQuery的最佳用途。有没有更好的办法? 是否可能为每个数组元素创建一个新的JavaScript对象 编辑:下面是一段小代码。它没有关闭,我已经更改了类名和变量,但这是一个粗略的想法 $.each

我正在尝试使用从另一个站点接收的数据创建一个“提要”。它以类似对象的数组形式出现。我尝试了几种显示数据的方法,但一直在改变主意,选择最好的方法。目前我正在使用jQuery循环遍历对象,并通过嵌套
$().html()

与我以前使用的纯javascript方法相比,这使用的代码要少得多,但我不确定这是否是jQuery的最佳用途。有没有更好的办法? 是否可能为每个数组元素创建一个新的JavaScript对象

编辑:下面是一段小代码。它没有关闭,我已经更改了类名和变量,但这是一个粗略的想法

$.each(feed.data, function(i, var_name) {
    $("<div>").attr({
    "id" : var_name.created_time,
    "class" : "Post"
    }).html(
        $("<img>").attr({
        "class" : "Picture",
        "src" : "some_src" + var_name.id + "/picture"
        });
$。每个(feed.data,函数(i,变量名称){
$(“”)。属性({
“id”:变量名称。创建时间,
“类别”:“职位”
}).html(

$(“您的方法是所有可能方法中效率最低的,因为每个元素都有大量的函数调用

尽管您可以按照建议添加模板引擎,但也值得学习如何创建html字符串,并且会发现在
$()
中包装每个元素并不会真正减少代码量

var newHtml=[];
$.each(feed.data, function(i, var_name) {

    newHtml.push('<div id="'+var_name.created_time+'" class="Post">');
      newHtml.push('<img class="Picture" src="some_src"' + var_name.id + '/picture" />');

         /* some nested data*/
         $.each( var_name.someRepeatingElements), function(i,val){
             newHtml.push('<p>'+val.content+'</p>')
         });
     newHtml.push('</div>')
});

/* after looping all data only make one append to DOM*/

$('#someDiv').append( newHtml.join(''))
var newHtml=[];
$.each(feed.data,函数(i,变量名称){
newHtml.push(“”);
newHtml.push(“”);
/*一些嵌套数据*/
$.each(var_name.someRepeatingElements)、函数(i,val){
newHtml.push(“”+val.content+“

”) }); newHtml.push(“”) }); /*循环所有数据后,只向DOM添加一个附加*/ $('#someDiv').append(newHtml.join('')
从语义上讲,这比嵌套大量的
$.html()
调用更容易阅读


在许多情况下,如果没有很多复杂的嵌套,创建自己的字符串比创建模板和填充模板的代码要少。

让我们看看您的代码尝试…..您只需执行
$(“#选择器”)。追加(“您想要的”)
,不过,如果您感到困扰,像这样的模板引擎可能会更好。对于这样的东西也很好。谢谢,AngularJS看起来非常强大!我最好开始学习