代码流程

  1、订制表头:table_config
  2、订制显示内容: table_config,data_list

  3、加载框: 图片,position:fixed
       4、-字符串格式化
       5、 自定义规则 @
       6、前端js整合:
       7、自执行函数【让我们自定义函数名和其他函数不冲突】 
       8、 jquery扩展【在函数内部可以执行程序】
            - js,函数作为作用域,首先当前找,上层找

整体代码

  

/*自执行函数*/
(function (jq) { var requestUrl = "";
  /*字符串格式化*/
String.prototype.format = function (args) {
return this.replace(/\{(\w+)\}/g, function (s, i) {
return args[i];
});
}; /*
向后台获取数据,
*/
function init() {
$('#loading').removeClass('hide'); $.ajax({
url:requestUrl,
type: 'GET',
data: {},
dataType: 'JSON',
success:function (response) {
/* 处理表头 */
initTableHead(response.table_config);
initTableBody(response.data_list,response.table_config);
$('#loading').addClass('hide');
},
error:function () {
$('#loading').addClass('hide');
}
}) }
/*处理表头数据*/
function initTableHead(table_config) { $('#tHead tr').empty();
$.each(table_config,function (k,conf) { var th = document.createElement('th');
th.innerHTML = conf.title;
$('#tHead tr').append(th); });
}
/*处理表体数据*/
function initTableBody(data_list,table_config) {
$.each(data_list,function (k,row_dict) {
// {'hostname':'xx', 'sn':'xx', 'os_platform':'xxx'},
// {'hostname':'xx1', 'sn':'xx2', 'os_platform':'xxx2'},
var tr = document.createElement('tr');
$.each(table_config,function (kk,vv) {
var td = document.createElement('td');
// td.innerHTML = row_dict[vv.q]; //vv.q // None,hostname,sn,os_platform
var format_dict = {};
$.each(vv.text.kwargs,function (kkk,vvv) {
if(vvv[0] == "@"){
var name = vvv.substring(1,vvv.length);
format_dict[kkk] = row_dict[name];
}else{
format_dict[kkk] = vvv;
}
});
td.innerHTML = vv.text.tpl.format(format_dict);
console.log(format_dict)
$(tr).append(td);
}); $('#tBody').append(tr);
}) }
/*自定义在函数内部执行程序*/
jq.extend({
"nBList":function (url) {
requestUrl = url;
init();
}
}); })(jQuery);

通过js代码来制作数据库增删改查插件的更多相关文章

  1. node.js封装数据库增删改查

    数据库增删改查的封装 小编不容易 const sql = { insert: function (Collection, insertData) { return new Promise((resol ...

  2. BaseDao代码,用于连接数据库实行增删改查等操作

    在学习JavaWeb时会用到此代码,用于实行增删改查操作 1 package com.bdqn.dao; import java.sql.Connection; import java.sql.Dri ...

  3. Yii2.0高级框架数据库增删改查的一些操作(转)

    yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2.0高级框架数据库增删改查的一些操作 --------------------------- ...

  4. go——beego的数据库增删改查

    一直都不理解使用go语言的时候,为什么还要自己去装beego,以为使用go便可以解决所有的问题,结果在朋友的点拨下,才意识到: go与beego的关系就好比是nodejs与thinkjs的关系,因此也 ...

  5. (转)SQLite数据库增删改查操作

    原文:http://www.cnblogs.com/linjiqin/archive/2011/05/26/2059182.html SQLite数据库增删改查操作 一.使用嵌入式关系型SQLite数 ...

  6. Yii2.0高级框架数据库增删改查的一些操作

    yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2.0高级框架数据库增删改查的一些操作 --------------------------- ...

  7. WindowsPhone8 数据库增删改查

    今天第一次在博客园发表文章,如果有的地方写的不对,还请大家指出! 1.这就是一个简单wp8数据库增删改查 1.创建数据表Person [Table] public class Person : INo ...

  8. MVC——数据库增删改查(aspx)

    MVC: V(View) :视图→就是页面的模板 C(Control): 控制器→客户主要面对的就是控制器, M(Model):模板→在模板里面主要就是写关于数据库的各种增删改查的方法 它们之间的关系 ...

  9. Android(java)学习笔记193:利用谷歌API对数据库增删改查(推荐使用)

    接下来我们通过项目案例来介绍:这个利用谷歌API对数据库增删改查 1.首先项目图: 2.这里的布局文件activity_main.xml: <LinearLayout xmlns:android ...

随机推荐

  1. Ionic学习笔记4_ionic路由(页面切换)

    1.1.  ionic路由机制: 状态 1.2.  ion-nav-view <body ng-controller="firstCtrl"> <a class= ...

  2. OSI与TCP/IP你了解多少?

    刚开始接触计算机的时候,非常好奇数据是怎样传输的,通过后期的学习逐步了解了计算机的通信原理.相信很多人在学习计算机的时候,首先入门的第一门课就是计算机的通信原理,而通信原理又离不开两大参考模型:OSI ...

  3. Crypto++库安装、测试

    项目中需要使用到C++加密解密库,选择了Crypto++这个开源库,于是先安装并写一个小例子试试 一.下载 网址:http://www.cryptopp.com/#download 二.打开项目 下载 ...

  4. C++中两个类相互include的问题

    在构造自己的类时,有可能会碰到两个类之间的相互引用问题,例如:定义了类A类B,A中使用了B定义的类型,B中也使用了A定义的类型 例如: Cup.h #ifndef CUP_H #define CUP_ ...

  5. UI-2-UILabel&UIImageView-补充

    课程要点: 控件之间的继承关系. UILabel UIImageView 利用UIImageView实现帧动画 补充 试图之间的继承关系 昨天学习UIView的时候,了解到UIView里面有以下几个常 ...

  6. Java联网技术之一TCP socket

    最近突然对java网络编程编程这一块非常感兴趣,于是找了很多资料,一点点的尝试,下面是自己的一点小见解,不喜勿喷,欢迎指正. 首先说说客户端和服务器端吧, 如果是网页的话,客户端通过网页的链接对服务器 ...

  7. 当synchronized关键字和this关键字

    package cn.itcast_01_mythread.thread.testThread; public class MyThreadWithImpliment_Synch_method imp ...

  8. CenOS下安装Memcache和PHP Memcache扩展.

    I.安装Memcahce 1. 安装依赖包libevent Memcache需要安装libevent,所以安装前可能需要执行 yum install libevent-devel 2.安装memcac ...

  9. Java基础05 实施接口(转载)

    经过封装,产品隐藏了内部细节,只提供给用户接口(interface). 接口是非常有用的概念,可以辅助我们的抽象思考.在现实生活中,当我们想起某个用具的时候,往往想到的是该用具的功能性接口.比如杯子, ...

  10. ios . -- UICollectionView --cell 自适应

    #pragma mark — 视图控制器中使用:(关键) layout.estimatedItemSize = CGSizeMake(WIDTH, ); // layout约束这边必须要用estima ...