zoukankan      html  css  js  c++  java
  • 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值就写成那样了。。

  • 相关阅读:
    FTP与HTTP上传文件的对比
    【FTP】Wireshark学习FTP流程
    【CSS】div
    浏览器URL中“#” “?” &“”作用
    【EF】vs2017中没有EF模型
    C# List的使用
    C# Dictionary使用
    Git/GitHub的一些问题
    PHP中的break与continue
    css使文字垂直水平居中
  • 原文地址:https://www.cnblogs.com/peterpanzsy/p/3613966.html
Copyright © 2011-2022 走看看