在js代码拼接dom对象到页面上的模板总结


Posted in Javascript onOctober 21, 2018

每次在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);
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Javascript 相关文章推荐
JS 自动完成 AutoComplete(Ajax 查询)
Jul 07 Javascript
ASP.NET jQuery 实例2 (表单中使用回车在TextBox之间向下移动)
Jan 13 Javascript
javascript检查浏览器是否支持flash的实现代码
Aug 14 Javascript
修改或扩展jQuery原生方法的代码实例
Jan 13 Javascript
jQuery给动态添加的元素绑定事件的方法
Mar 09 Javascript
javascript函数特点实例分析
May 14 Javascript
详解利用exif.js解决ios手机上传竖拍照片旋转90度问题
Nov 04 Javascript
jQuery实现的简单拖动层示例
Feb 22 Javascript
VUE中v-on:click事件中获取当前dom元素的代码
Aug 22 Javascript
js闭包的9个使用场景
Dec 29 Javascript
JS实现简易日历效果
Jan 25 Javascript
vue+springboot实现登录验证码
May 27 Vue.js
如何安装控制器JavaScript生成插件详解
Oct 21 #Javascript
Node.js中的不安全跳转如何防御详解
Oct 21 #Javascript
详解Axios 如何取消已发送的请求
Oct 20 #Javascript
使用Vue做一个简单的todo应用的三种方式的示例代码
Oct 20 #Javascript
Iview Table组件中各种组件扩展的使用
Oct 20 #Javascript
详解webpack打包第三方类库的正确姿势
Oct 20 #Javascript
详解ES6 Promise对象then方法链式调用
Oct 20 #Javascript
You might like
解析在PHP中使用全局变量的几种方法
2013/06/24 PHP
PHP 等比例缩放图片详解及实例代码
2016/09/18 PHP
PHP自带方法验证邮箱、URL、IP是否合法的函数
2016/12/08 PHP
简单实现php上传文件功能
2017/09/21 PHP
25个优雅的jQuery Tooltip插件推荐
2011/05/25 Javascript
javascript自定义startWith()和endWith()的两种方法
2013/11/11 Javascript
javascript 获取iframe里页面中元素值的方法
2014/02/17 Javascript
js文字横向滚动特效
2015/11/11 Javascript
基于BootStrap的图片轮播效果展示实例代码
2016/05/23 Javascript
微信小程序 Record API详解及实例代码
2016/09/30 Javascript
关于js二维数组和多维数组的定义声明(详解)
2016/10/02 Javascript
js 去掉字符串前后空格实现代码集合
2017/03/25 Javascript
Vue-Router2.X多种路由实现方式总结
2018/02/09 Javascript
基于vue打包后字体和图片资源失效问题的解决方法
2018/03/06 Javascript
vuex的module模块用法示例
2018/11/12 Javascript
微信小程序按钮点击跳转页面详解
2019/05/06 Javascript
前端Electron新手入门教程详解
2019/06/21 Javascript
通过微信公众平台获取公众号文章的方法示例
2019/12/25 Javascript
vue 自定义组件的写法与用法详解
2020/03/04 Javascript
小程序中使用css var变量(使js可以动态设置css样式属性)
2020/03/31 Javascript
python实现查询IP地址所在地
2015/03/29 Python
python虚拟环境virtualenv的安装与使用
2017/09/21 Python
Python数据类型中的“冒号“[::]——分片与步长操作示例
2018/01/24 Python
Python 2.7中文显示与处理方法
2018/07/16 Python
python ipset管理 增删白名单的方法
2019/01/14 Python
Python-split()函数实例用法讲解
2020/12/18 Python
柒牌官方商城:中国男装优秀品牌
2017/06/30 全球购物
获奖的大学生创业计划书
2014/01/05 职场文书
金融学专业大学生职业生涯规划
2014/03/07 职场文书
周恩来的四个昼夜观后感
2015/06/03 职场文书
《圆的面积》教学反思
2016/02/19 职场文书
辞职信怎么写?
2019/05/21 职场文书
门面租赁合同范文
2019/08/06 职场文书
sqlserver2017共享功能目录路径不可改的解决方法
2021/04/16 SQL Server
比较几种Redis集群方案
2021/06/21 Redis
简单谈谈Python面向对象的相关知识
2021/06/28 Python