talbe是javascript动态生成的,根据你的sql语句来的,分页是vbs用数组来造的轮子,vbs这脚本虽然强大,却没有返回数据集的东东,数组来做简单的分页还是比较简单的,批量跟新呢?是上传execl来更新的,最好是用vba操作execl的话,直接在execl里修改了立马更新数据库,只是个小工具,目前还不是很强大不是很满意,慢慢做,局限hta不能跨平台只能windows,不能和硬件结合。优点调用webservies不需要考虑域的问题,做一个小巧强悍的工具还是比较方便的,因为hta直接双击就OK了,在windos下还是目前发现最方便的。算式小玩下hta这个东东吧!注意是目前网上没有我这么干的人,明确的说是可以这么干,关键是你愿不愿意!架构太大千万别玩,感谢公司没给太多任务才有时间搞这个小东东,js还是必须要强悍。hta去写花了1周时间写了个抽奖程序!不过要我写是有代价的,必须特等奖!有时间以前上传。这个东西只能做些小东西,大东东还是java做服务端,强悍的js做客户端。
​示例图片:

​2. [代码]造的轮子比较粗糙,还要优化,没有用jquery,因为准备出事js方向的工作   
function initDB(){
   //返回数据库对象
   var y = document.getElementById("gd").value;
   if(y == ""){
     document.getElementById("validate").innerHTML="工单号不能为空!";
     //document.getElementById("gd").focus();
     return true;
   }else{
      document.getElementById("validate").innerHTML="";
   }
   var usern = /^[a-zA-Z0-9_-]{1,}$/; 
   if (!y.match(usern)){
      { 
         alert("工单号只能由字母数字-组成\n!");
         document.getElementById("gd").focus();
         return false; 
       }
   }
   if (y.length <14 || y.length > 14){
       alert("工单号为14个长度为数字,字母,-组成的字符串\n!");
       document.getElementById("gd").focus();
       return false; 
   }
 
   strSql = "SELECT ta_ecm03,ecm03,ta_ecm09,ecm06,ecm45,ta_ecm08,ecm311,ecm301,ecm312,ecm313 FROM ecm_file WHERE ecm01 ='"+y+"' ORDER BY ta_ecm03,ecm03";
   ConnectDatabase("ORACLE","TOPDB","T41","T41","","","")
 
   //清空table表格
   if(document.getElementById("table").rows.length > 0){
      removeAll();
   }
    
   hh = GetLenOfField(strSql); //数据的列长
   ll = GetLenght(strSql); //数据的行长
   showPageInfo(ll,hh);
  
   var arrayObj;
   var jsArray;
   var arrayObjName;
   var jsArrayName; 
   //获得getSystemData(strSql)方法返回的数组对象
   arrayObj = getSystemData(strSql); 
   //利用VBArray函数把对象转换为数组
   jsArray = VBArray(arrayObj).toArray(); 
    
   arrayObjName = getSystemDataName(strSql); 
   jsArrayName = VBArray(arrayObjName).toArray();
    
   _table=document.getElementById("table");
   _table.border="0px";
   _table.width="1306px";
    
   //生成表格,采用appendChild
   //添加表名称到动态table第一行
   cur_page_info.innerHTML   =   "当前页:"+cur_page;
   var rowName=document.createElement ("tr"); //表名称行
   rowName.className="th" //'设置该行的样式;
   rowName.id=1;
   document.getElementById("newbody").appendChild (rowName);
   for(var i=1;i<=ll/hh;i++){
      var cellName=document.createElement ("td"); //表名称列
      cellName.Name = jsArrayName[i-1]; //获得表名称数据
      cellName.appendChild(document.createTextNode (cellName.Name)); 
      rowName.appendChild (cellName);
      document.getElementById("newbody").appendChild (rowName);
   }
    
   //添加表数据for嵌嵌套,因为vbs只能接受一维数组,所以加了K变量来叠加
   total_page = Math.ceil(ll/(ll/hh)/10);
   if (total_page == 1){
       var k=1;
       for(var i=1;i<=ll/(ll/hh);i++){
      var row=document.createElement ("tr");    //表数据行
        row.className="row_add" //'设置该行的样式;
      row.id=i;
      for(var j=1;j<=ll/hh;j++){
       var cell=document.createElement ("td");  //表数据列
       cell.id =jsArray[k-1];            //获得表数据
          //表单的行列控制
          cell.appendChild(document.createTextNode (cell.id));
       row.appendChild (cell); 
          k++;
      }
        //添加到newbodydiv中
      document.getElementById("newbody").appendChild(row);
    }flash动画:http://www.huiyi8.com/donghua/​
   }else{
   var k=1;
   for(var i=1;i<=10;i++){
  var row=document.createElement ("tr");    //表数据行
    row.className="row_add" //'设置该行的样式;
  row.id=i;
  for(var j=1;j<=ll/hh;j++){
   var cell=document.createElement ("td");  //表数据列
   cell.id =jsArray[k-1];            //获得表数据
      //表单的行列控制
      cell.appendChild(document.createTextNode (cell.id));
   row.appendChild (cell); 
      k++;
  }
    //添加到newbodydiv中
  document.getElementById("newbody").appendChild(row); 
  }
 }
}
 
  var   cur_page   =   1;   
  var   total_page   =   1;   
   
  function   gotoPage(pageno){
     var y = document.getElementById("gd").value;
     strSql = "SELECT ta_ecm03,ecm03,ta_ecm09,ecm06,ecm45,ta_ecm08,ecm311,ecm301,ecm312,ecm313 FROM ecm_file WHERE ecm01 ='"+y+"' ORDER BY ta_ecm03,ecm03";
     ConnectDatabase("ORACLE","TOPDB","T41","T41","","","")
        
     hh = GetLenOfField(strSql); //数据的列长
     ll = GetLenght(strSql); //数据的行长
       
     var arrayObj;
     var jsArray;
     //获得getSystemData(strSql)方法返回的数组对象
     arrayObj = getSystemData(strSql); 
     //利用VBArray函数把对象转换为数组
     jsArray = VBArray(arrayObj).toArray();
      
     total_page = Math.ceil(ll/(ll/hh)/10);
    
    if(   pageno   <   1   )   { 
      cur_page_info.innerHTML   =   "当前页:"+cur_page;
      cur_page   =   1;
      document.getElementById("max").disabled=false;
      //alert(cur_page);  
    }else   if(   pageno   >=   total_page   )   { 
      cur_page   =   pageno;
      //alert("当前页"+cur_page);
      cur_page_info.innerHTML   =   "当前页:"+cur_page;
      if(cur_page == total_page){
        document.getElementById("min").disabled=false;
        removeRow();
        document.getElementById("max").disabled=true;
      }
      if (cur_page   ==  total_page){
      var k=(cur_page-1)*10*10+1;
       var num = (ll-(cur_page-1)*10*10)/10;
       for(var i=1;i<=num;i++){
      var row=document.createElement ("tr");    //表数据行
        row.className="row_add" //'设置该行的样式;
      row.id=i;
      for(var j=1;j<=ll/hh;j++){
       var cell=document.createElement ("td");  //表数据列
       cell.id =jsArray[k-1];            //获得表数据
          //表单的行列控制
          cell.appendChild(document.createTextNode (cell.id));
       row.appendChild (cell); 
          k++;
      }
        //添加到newbodydiv中
      document.getElementById("newbody").appendChild(row); 
      } 
      } 
    }   else   {   
       cur_page   =   pageno;
       cur_page_info.innerHTML   =   "当前页:"+cur_page;
       document.getElementById("max").disabled=false;
       if(cur_page <= 1){
          document.getElementById("min").disabled=true;
       }else{
               document.getElementById("min").disabled=false;
       }
 
       removeRow();
       var k=(cur_page-1)*10*10+1;
       //var num = (ll-(cur_page-1)*10*10)/10;
       for(var i=1;i<=10;i++){
      var row=document.createElement ("tr");    //表数据行
        row.className="row_add" //'设置该行的样式;
      row.id=i;
      for(var j=1;j<=ll/hh;j++){
       var cell=document.createElement ("td");  //表数据列
       cell.id =jsArray[k-1];            //获得表数据
          //表单的行列控制
          cell.appendChild(document.createTextNode (cell.id));
       row.appendChild (cell); 
          k++;
      }
        //添加到newbodydiv中
      document.getElementById("newbody").appendChild(row); 
      }
    } 
  }
   
  function   showPageInfo(total_item,total_val){   
    if(   total_item.value   ==   0   )   {   
      total_page   =   1;   
    }   else   {   
      total_page   =   Math.floor((9   +   parseInt(total_item))   /   10);   
    }   
    var   txt   =  "  总页数:  "+Math.ceil(total_item/(total_item/total_val)/10); 
    var   prev_page   =   cur_page   -   1;
    var   next_page   =   parseInt(cur_page)   +   1;  
    if(   cur_page   >=   1   )   {  
      txt   +=   "       <input   type='button' id='min'  value=' < '   onClick='gotoPage(cur_page-1)'/>"
    }   else   {   
      txt   +=   "       <input   type='button'   value=' < '   onClick='gotoPage(cur_page-1)'   disabled/>" 
    }   
    if(cur_page   <   Math.ceil(total_item/(total_item/total_val)/10))   {
       txt   +=   "       <input   type='button' id='max'  value=' > '   onClick='gotoPage(cur_page+1)'/>"
    }   else   {   
      txt   +=   "       <input   type='button'   value=' > '   onClick='gotoPage(cur_page+1)'   disabled/>" 
    }   
    //disabled
    txt   +="   总行数:  "+total_item/(total_item/total_val);   
    page_info.innerHTML   =   txt;   
  //   window.alert(txt);   
  }
 
function importExcel1(){
    if(document.getElementById('file1').value==""){
        alert("附件不可为空!");
        return false;
    }
    var oXL = new ActiveXObject("Excel.application"); 
    var filePath=document.getElementById('file1').value;
    var oWB = oXL.Workbooks.open(filePath);
    oWB.worksheets(1).select();
    var oSheet = oWB.ActiveSheet;
    var row=null;
    var cell=null;
    if(row == null){
        row = oSheet.usedrange.rows.count;
        cell = oSheet.usedrange.columns.count;
        var array=new Array(row-1,cell-1); 
        for(i = 1;i<=row;i++){
            for (j=1;j<=cell;j++)
            {
               //保存在2维数组里面
               array[i-1,j-1] = oSheet.Cells(i,j).value;
            }
        }
    }
    oXL.Quit();
    document.getElementById('file1').value="";
}

hta+vbs+js+div+css (javascript是原生态的)的更多相关文章

  1. 网页首页制作总结(div+css+javascript)

    一.对网页整体布局,分几个版块 如下图所示: 确定布局之后,规划好网页,准备素材,按照标准文档流的顺序,从上到下,从左到右写入代码. 以上图为例,分为两部分,红色的主体部分和页脚.主体部分分割为头部. ...

  2. div+css+javascript 走马灯图片轮换显示

    效果如图 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...

  3. DIV+CSS+JS基础+正则表达式

    ...............HTML系列....................        DIV元素是用来为HTML文档内大块(block-level)的内容提供结构和背景的元素.DIV的起始 ...

  4. 下拉的DIV+CSS+JS二级树型菜单

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. 动态添加div及对应的js、css文件

    动态添加div及对应的js.css文件 在近期的项目开发中需要在首页中添加很多面板型的div,直接加载代码显得很繁琐,于是利用js封装一个动态添加div及其对应css文件和js文件的方法供大家参考使用 ...

  6. 【javascript】原生js更改css样式的两种方式

    下面我给大家介绍的是原生js更改CSS样式的两种方式: 1通过在javascript代码中的node.style.cssText="css表达式1:css表达式2:css表达式3  &quo ...

  7. html css javascript 知识点总结 bom js 操作标签 文本 节点 表格各行变色 悬停变色 省市联动 正则

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  8. DIV+CSS+JS实现色彩渐变字体

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  9. 利用div+css实现九宫格,然后用js实现点击每个格子可以随机更改格子(div)的背景颜色

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. C#静态构造函数和非静态构造函数

    // 使用静态构造函数时,需要注意几点 //1. 一个类中,最多只能有一个静态构造函数,不允许静态构造函数的重载: //2. 不能加任何访问修饰符(public/private/internale等) ...

  2. HDU3785寻找大富翁~~真真切切的水题

    寻找大富翁 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Subm ...

  3. @Temporal()注解的使用

    数据库的字段类型有date.time.datetime而Temporal注解的作用就是帮Java的Date类型进行格式化,一共有三种注解值: 第一种:@Temporal(TemporalType.DA ...

  4. iOS 用cornerstone 创建分支

    第一步:在cornerstone中添加服务器上的代码路径,如下: 第二步:选中服务器路径下的代码,选择“分支”按钮 第三步:开始创建分支 第四步:效果图如下 第五步:选择分支下的路径下载代码并进行修改 ...

  5. SGU 106 The equation【扩展欧几里得】

    先放一张搞笑图.. 我一直wa2,这位不认识的大神一直wa9...这样搞笑的局面持续了一个晚上...最后各wa了10发才A... 题目链接: http://acm.hust.edu.cn/vjudge ...

  6. 动态规划:Ignatius and the Princess IV

    #include<stdio.h> #include<string.h> #include<math.h> int main() { _int64 n,a; whi ...

  7. linux修改PS1,自定义命令提示符样式

    目录 参数说明 修改颜色 linux默认的命令提示符是这样的: 白色的,如果当前执行的命令很多的话,一整块屏幕上全是一堆输出信息,上一条命令在哪?我刚输入的命令在哪?找的头晕.有没有办法可以修改命令提 ...

  8. 分享一下然让显卡满血复活的小技巧(GTX)

    分享一下然让显卡满血复活的小技巧 笔者在玩大型游戏卡顿15fps下载如下操作 GTX950玩大型游戏都不会卡帧率稳定在30fps 下载GeForce Experience下载更新最新驱动 下载如下程序 ...

  9. mybatis结合generator进行分页插件PluginAdapter开发

    使用org.mybatis.generator生成UserExample时,无法进行分页,使用下面这个类运行generator便可以生成分页相关的属性了 package org.mybatis.gen ...

  10. ThoughtWorks技术雷达

    ThoughtWorks技术雷达 技术成熟方案的一个推荐网站.