jqgrid在colModel中多次调用同一个字段值

Debug:

代码1:

            {
                            name : 'input',
                            index : 'input',
                            width : 100,
                            align : "center",
                            formatter : function(value, grid, rows,
                                    state) {
//                                alert(rows.ID);
                                return "<a href=\"javascript:void(0)\" style=\"color:#798991\" onclick=\"selectInput('" + rows.ID + "')\">输入参数添加</a>"
                            }
                        }

colModel的一个元素,表示一列。之类需要调用该行中的ID字段,原来的写法是将name写成ID

selectInput('" + rows.ID + "')中的rows.ID写成value,这样来调用ID值的,可是已经有了ID列,这样的话,后面有个删除函数需要调用ID
代码2:

function deleteAlgorithm() {
    var sels = $("#AlgorithmList").jqGrid('getGridParam','selarrrow'); 
    if(sels==""){ 
       //$().message("请选择要删除的项!"); 
       alert("请选择要删除的项!");
    }else{ 
        var selectedIDs={};
        $.each(sels,function(i,n){ 
          if(sels[i]!=""){ 
              var rowData = $("#AlgorithmList").jqGrid("getRowData", sels[i]);
              selectedIDs["ids[" + i + "]"]=rowData.ID;
//              alert(rowData.ID);
          } 
        }); 

       if(confirm("您是否确认删除?")){ 
        $.ajax({ 
          type: "POST", 
          url: "delAlgorithmsCycle.action", 
          data: selectedIDs, 
          beforeSend: function() { 
               $().message("正在请求..."); 
          }, 
          error:function(){ 
               $().message("请求失败..."); 
          }, 
          
          success: function(msg){ 
            alert("删除成功!");
            $("#AlgorithmList").trigger("reloadGrid");
               if(msg!=0){ 
                   var arr = msg.split(','); 
                   $.each(arr,function(i,n){ 
                         if(arr[i]!=""){ 
                             $("#AlgorithmList").jqGrid('delRowData',n);  
                         } 
                   }); 
                   $().message("已成功删除!"); 
               }else{ 
                   $().message("操作失败!"); 
               } 
          } 
        }); 
       } 
    } 
}

这样在上面标红的rowData.ID来获取ID值就会出问题,因为有两个,它会默认获得第二个ID的值。

为了区分,所以代码1中需要调用ID值就写成那样了。。

posted @ 2014-03-20 16:04  peterpanzsy  阅读(1087)  评论(0编辑  收藏  举报