js 動態創建表格


/*
從數據庫獲取表數據
*/
function getTableData(){ debugger;
     var data1 = [];
     var current_instance_id = businessObj.getCurrentInstanceId();
     if (current_instance_id) {
         var req = SOAP_GetSaleCardStore.XMLDocument.cloneNode( true);
         var root_id = businessObj.getRootInstanceId(current_instance_id)
         if (root_id) {
            req.selectSingleNode(".//processinstanceid").text =root_id;
             var reqs = businessObj.executeSoap(req);
             if(reqs&&reqs.selectNodes(".//tuple").length>0){
                 var tuple = reqs.selectNodes(".//tuple");
                $.each(tuple,  function(i){
                     var nodes = tuple[i].selectNodes(".//old/BPM_SH_SALECARDSTORE")[0];
                         var node_array = [i+1,
                                          nodes.selectSingleNode(".//CARD_KIND_NAME").text,
                                          nodes.selectSingleNode(".//CARD_TYPE_NAME").text,
                                          $("#main_pro_info_name").text(),
                                          nodes.selectSingleNode(".//CARD_PRICE").text,
                                          nodes.selectSingleNode(".//APPLY_NUM").text,
                                          nodes.selectSingleNode(".//CARD_PRA_VALUE").text,
                                          nodes.selectSingleNode(".//CARD_DISCOUNT").text,
                                          nodes.selectSingleNode(".//TOTAL_PRICE").text,
                                          nodes.selectSingleNode(".//ID").text,
                                          nodes.selectSingleNode(".//CARD_KIND").text,
                                          nodes.selectSingleNode(".//CARD_TYPE").text,];
                    data1[i] = node_array;
                });
            }
            $.each(data1,  function(i){
                CreateTableRow("","","applycard",data1[i], false,"");
            });
        }
    }
}



/*
創建表格
front_callback    創建表格行前回調函數
obj                  button 按鈕對象  可以為空     
name              表格name
data              加載數據   數組對象
edit              是否可修改 默認false
callback          創建表格行后回調函數
*/
function CreateTableRow(front_callback,obj,name,data,edit,callback){ debugger;
     if(data.length>0){
         var tr_id = data[9];
         if(front_callback){front_callback(data);}

         var edit_flag =  false;
         if(edit){edit_flag = edit;}
         try{
         var _table_tbody = $("#"+name+" TBODY");
         var otr = document.createElement("tr");
        otr.id = tr_id;
        otr.card_kind = data[10];
        otr.card_type = data[11];
        otr.selected = "false";
         if(edit_flag){otr.onclick =  function(){selectRow( this,obj,applycard_callback)}}
        _table_tbody[0].appendChild(otr);
         var handClone_td = $("#"+name+" tr:first td").clone( true);
        $.each(handClone_td,  function(i){
            handClone_td[i].bgColor = "#FFFFFF";
            handClone_td[i].innerText = data[i];
            handClone_td[i].style.cursor = "hand";
            handClone_td[i].contentFlag = "1";
            otr.appendChild(handClone_td[i]);
        });
        Statistics();
         if(callback){callback();}
        } catch(e){}
        
    }
}


/*
選中某行
obj          當前表格列對象
button      修改按鈕的button對象
callback  回調函數
*/
  function selectRow(obj,button,callback){ debugger;
      var _tr = obj.parentNode.childNodes;
     if(_tr.length > 2){
          for ( var i = 1; i < _tr.length; i++){
             var _td = _tr[i].childNodes;
                _tr[i].selected = "false";
             for ( var j = 0; j < _td.length; j++) {
               _td[j].bgColor = '#FFFFFF';
            }
        }
     }
     obj.selected = "true";
      var td = $(obj).find("td");
     $.each(td, function(o){
        td[o].bgColor = "#FFFFCC";
    });
    button.value = "修改";
    button.onclick =  function(){modifyTableValue(obj,button,modifyRow_callback)};
     if(callback){callback(td);}
}
//刪除表格數據
function delTableData(){
 _tr_del = $("#gmgnQueryData tr[selected]");
 _tr_del.remove();
}
// 某些回調函數和方法因每個人的需求不同,在此就省略了。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM