在js代码拼接dom对象到页面上去的模板总结(必看)


Posted in Javascript onFebruary 14, 2017

每次在js代码里面想动态的拼个dom,然后append到页面上,都是各种麻烦,

要是可以直接在jsp页面弄个隐藏的model那是很好的,用js方法里面的clone方法也是很好的,还可以给不同部分set值。

为了以后简单点,我就把模板摆着,方便后面用得着的时候,复制粘贴。

function fillDialog(dataArray) {
  var target = $("#dialogTarget");
  target.empty();
  for (var i = 0; i < dataArray.length; i++) {
    var label = $('<label class="control-label" style="width: auto; text-align: left;"></label>');
    label.text("" + dataArray[i].channelName);
    var input = $("<input type=\"text\"/>");
    input.prop("name", "checkbox");
    input.prop("type", "checkbox");
    input.prop("value", dataArray[i].id);
    if (dataArray[i].showInUserStatistic) {
      input.prop("checked", "true");
    }
    label.prepend(input);
    target.append(label);
  }
}
var trs = "";
  for (var i = 0; i < dataArray.length; i++) {
    var branchBank = dataArray[i].branch;
    var newUser = dataArray[i].newUserNum;
    var netBoostUser = dataArray[i].netBoostUserNum;
    var closeUser = dataArray[i].closeUserNum;
    var activeUser = dataArray[i].activeUserNum;
    var index = activeUser.indexOf(".");
    if (index > 0) {
      //去分行活跃用户数的小数部分如:11.0 ---> 11
      activeUser = activeUser.substring(0, index);
    }
    trs += "<tr><td title='" + branchBank + "'>" + branchBank + "</td>";
    trs += "<td title='" + newUser + "'>" + newUser + "</td>";
    trs += "<td title='" + netBoostUser + "'>" + netBoostUser + "</td>";
    trs += "<td title='" + closeUser + "'>" + closeUser + "</td>";
    trs += "<td title='" + activeUser + "'>" + activeUser + "</td>";
    trs += "</tr>";
  }
  newList.append("<tbody>" + trs + "</tbody>");
  tableChart.append(newList.show());

 var $metric = $("#metric");
 $metric.empty();
 var optGroup0 = $("<optgroup label='常用指标'>");
 var optGroup1 = $("<optgroup label='不常用指标'>");
 var optGroup2 = $("<optgroup label='未分组指标'>");

 for(var i=0; i<allMetricSources.length; i++) {
   var m = allMetricSources[i];
   if( m != null && (m.type == stream_type || m.type == 2)){
  var option = $("<option ></option>");
  option.attr("value", m.metric);
  option.attr("data_type", m.data_type);
  option.attr("unit", m.unit);
  option.html(m.title);
  if (m.groupType == 0) {
  optGroup0.append(option);
  } else if (m.groupType == 1) {
  optGroup1.append(option);
  } else {
  optGroup2.append(option);
  }
   }
  }
 $metric.append(optGroup0);
 $metric.append(optGroup1);
 $metric.append(optGroup2);
  if(metric != undefined){
 $metric.val(metric);
  }
 $metric.trigger("chosen:updated");

function fillRecoveryTable(data) {
  var $tableBody = $("#recoveryTable").find("tbody");
  $tableBody.empty();
  var trs = "";
  for (var i = 0; i < data.length; i++) {
    var recovery = data[i];
    trs += "<tr><td >" + recovery.fileName + "</td>";
    trs += "<td >" + recovery.timeString + "</td>";
    trs += "<td >" + (recovery.result ? "成功" : "失败") + "</td>";
    trs += "<td >" +
      "<a onclick=\"removeRecovery('" + recovery.id + "');\" class=\"icon-trash option\" title=\"删除\"></a>" +
      "<a onclick=\"doRecovery('" + recovery.id + "');\" class=\"icon-cog option\" title=\"一键恢复\" ></a></td>";
    trs += "</tr>";
  }
  $tableBody.append(trs);
}

以上这篇在js代码拼接dom对象到页面上去的模板总结(必看)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
CSS和JS标签style属性对照表(方便js开发的朋友)
Nov 11 Javascript
面向对象设计模式的核心法则
Nov 10 Javascript
javascript获取当前鼠标坐标的方法
Jan 10 Javascript
js实现DOM走马灯特效的方法
Jan 21 Javascript
JavaScript弹出新窗口后向父窗口输出内容的方法
Apr 06 Javascript
Bootstrap 实现查询的完美方法
Oct 26 Javascript
ThinkJS中如何使用MongoDB的CURD操作
Dec 13 Javascript
详解Angular2中Input和Output用法及示例
May 21 Javascript
解决Jstree 选中父节点时被禁用的子节点也会选中的问题
Dec 27 Javascript
vue弹窗插件实战代码
Sep 08 Javascript
Vue父子组件之间的通信实例详解
Sep 28 Javascript
详细介绍Next.js脚手架完整搭建封装
Apr 26 Javascript
jquery封装插件时匿名函数形参和实参的写法解释
Feb 14 #Javascript
js实现数组去重方法及效率?Ρ? target=
Feb 14 #Javascript
jQuery实现Table表格隔行变色及高亮显示当前选择行效果示例
Feb 14 #Javascript
微信小程序小组件 基于Canvas实现直播点赞气泡效果
May 29 #Javascript
Bootstrap中data-target 到底是什么
Feb 14 #Javascript
详解JS: reduce方法实现 webpack多文件入口
Feb 14 #Javascript
如何快速上手Vuex
Feb 14 #Javascript
You might like
php写的AES加密解密类分享
2014/06/20 PHP
如何解决PHP无法实现多线程的问题
2015/09/25 PHP
CodeIgniter控制器之业务逻辑实例分析
2016/01/20 PHP
Yii开启片段缓存的方法
2016/03/28 PHP
php获取服务器操作系统相关信息的方法
2016/10/08 PHP
ZendFramework框架实现连接两个或多个数据库的方法
2016/12/08 PHP
PHP数据库操作三:redis用法分析
2017/08/16 PHP
jQuery中attr()和prop()在修改checked属性时的区别
2014/07/18 Javascript
javascript设计模式之中介者模式Mediator
2014/12/30 Javascript
jquery让指定的元素闪烁显示的方法
2015/03/17 Javascript
实例讲解javascript注册事件处理函数
2016/01/09 Javascript
jquery ajax局部加载方法详解(实现代码)
2016/05/12 Javascript
AngularJS equal比较对象实例详解
2016/09/14 Javascript
Vue.js学习之过滤器详解
2017/01/22 Javascript
js移动端事件基础及常用事件库详解
2017/08/15 Javascript
Vue.js路由实现选项卡简单实例
2019/07/24 Javascript
Vue-cli assets SubDirectory及PublicPath区别详解
2020/08/18 Javascript
[53:29]完美世界DOTA2联赛循环赛 DM vs Matador BO2第二场 11.04
2020/11/05 DOTA
Pyinstaller将py打包成exe的实例
2018/03/31 Python
Python查找第n个子串的技巧分享
2018/06/27 Python
python从内存地址上加载python对象过程详解
2020/01/08 Python
解决Tensorflow sess.run导致的内存溢出问题
2020/02/05 Python
django 实现手动存储文件到model的FileField
2020/03/30 Python
Python接口测试文件上传实例解析
2020/05/22 Python
详解pycharm连接远程linux服务器的虚拟环境的方法
2020/11/13 Python
使用CSS3在触屏上为按钮实现激活效果
2013/09/27 HTML / CSS
世界领先的26岁以下学生和青少年旅行预订网站:StudentUniverse
2018/07/01 全球购物
N:Philanthropy官网:美国洛杉矶基础款服装
2020/06/09 全球购物
电气工程及其自动化学生实习自我鉴定
2013/09/19 职场文书
年终总结会议主持词
2014/03/17 职场文书
教师师德演讲稿
2014/05/06 职场文书
2014年应急管理工作总结
2014/11/26 职场文书
小学元宵节活动总结
2015/02/06 职场文书
初中运动会前导词
2015/07/20 职场文书
转变工作作风心得体会
2016/01/23 职场文书
初中思品教学反思
2016/02/20 职场文书