• 通过js代码来制作数据库增删改查插件


    代码流程

      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);


                       
       

  • 相关阅读:
    时光卷轴,IT启示录2022年5月刊
    乘风破浪,遇见最美Windows 11之现代Windows桌面应用开发 自定义生成配置文件(Directory.Build.props)来实现灵活切换
    源码解读之RedissonLock.lock()方法 爱我
    最小生成树
    tarjan/2sat
    【java校招你不知道的那些事儿】校招和社招的区别是什么?为什么不参加社招
    SQL in 参数化
    手写事件发布/订阅框架(二)
    JDMatrix
    sql的查询多次in 操作的导致查询数据为空
  • 原文地址:https://www.cnblogs.com/xuanan/p/7653338.html
Copyright © 2020-2023  润新知