开发者社区> 问答> 正文

如何使用jquery插入大量html..

screenshot
添加分类那里是用的ajax post来添加,我想添加成功后直接在左面的列表里里显示..但每个tr元素里的html非常多.
screenshot该如何插入比较方便

展开
收起
云栖技术 2016-05-25 10:43:01 2648 0
1 条回答
写回答
取消 提交回答
  • 社区爱好者,专为云栖社区服务!

    准备html字符串
    无论怎么插入,那堆html字符串肯定是省不了的……
    所以你可以选择是把那堆html放在

    ``
    然后用$('#tr-template').html()来获取。
    还是直接作为Ajax的结果返回。

    插入字符串
    插入的话,用$(...).append(html)就能把字符串加入到目标元素中了。
    不过貌似你还需要做一些替换(如果能直接插入就不成问题了对吧),还好有人写了个String.format函数

    http://stackoverflow.com/questions/610406/javascript-equivalent-to-printf-string-format/4673436#4673436 下面最高分的答案
    所以你可以拷下来改改,用这个String.format将模板中的{1},{2}什么的替换成Ajax返回的变量,这样再插入就好了。

    更进一步说,还可以拓展这个函数,提高它的可读性:

    全选复制放进笔记if (!String.prototype.format) {                                                 
      String.prototype.format = function() {                                        
        var hash = arguments[0];                                                                                       
        return this.replace(/{(\w+)}/g, function(match, item) {                        
          return typeof hash[item] != 'undefined' ? hash[item] : match;                
        });                                                                            
      };                                                                               
    }                                                                                  
    
    console.log("my name is {name}".format({ name: '顺其自然' }));
    2019-07-17 19:13:45
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
《零基础HTML入门教程》 立即下载
天猫 HTML5 互动技术实践 立即下载
天猫HTML5互动技术实践 立即下载