2013-10-31 43 views
1

我与jqGrid的工作,但面临的问题,同时添加和编辑。我jqGrid的代码看起来是这样..jqGrid的添加和编辑表单属性不工作

function setupGrid(){ 
    jQuery("#dataTable").jqGrid({ 
     url: "person/get", 
     datatype: "json", 
     loadonce : false, 
     jsonReader: {root : "rows", repeatitems: false, id: "id"}, 
     colNames:['ID','First Name','Last Name', 'Address', 'Postcode'], 
     colModel:[ 
      {name:'id',index:'id', width:20, sortType:"int"}, 
      {name:'firstName',index:'firstName', width:100, editable:true}, 
      {name:'lastName',index:'lastName', width:100, editable:true}, 
      {name:'address',index:'address', width:380, align:"right", editable:true}, 
      {name:'postcode',index:'postcode', width:100, align:"right", editable:true,editoptions:{size:25} 
      } 
     ], 
     rowNum:4, 
     rowList:[5,10,20,30], 
     height:200, 
     pager: "#pagingDiv", 
     viewrecords: true, 
     sortname: 'id', 
     sortorder: "desc", 
     caption: "Names and Addresses", 
     rownumbers : true, 
     ondblClickRow: function(rowid) { 
      grid.jqGrid('editGridRow',rowid, editParam); 
      return; 
     } 
    }).navGrid('#pager', 

     {add : true, edit : true, del: true, search:true, 
      multipleSearch : true 
     }, 

     { 
      recreateform : true, 
      width : 800, 
      url: 'person/test', 
      top: 350, 
      left:400, 

      editCaption:"Edit Employee", 
      viewPagerButtons :false, 
      closeOnEscape:true, 
      model : true, 
      closeAfterEdit : true, 
      topinfo : 'Top Info Test Edit', 
      bottominfo : "Footer Info", 
      checkOnSubmit : true, 
     }, 

     { 
      recreateform : true, 
      width:300, 
      url:'person/test2', 
      top: 350, 
      left:400, 
      addCaption : "Add Employee", 
      closeOnEscape:true, 
      drag : true, 
      model : true, 
      topinfo : 'Top Info Test', 
      closeAfterAdd : true, 
     }, 


     { 
      url : 'person/delete', 
      mtype:"POST", 
      deleteCaption : "Delete Employee" 
     }, 

    { 
      recreatefilter : true     
    }); 


    jQuery("#dataTable").jqGrid('filterToolbar',{stringResult: true,searchOnEnter : true}); 
} 

我的问题是一个我启动应用程序,然后单击添加的jqGrid按钮,然后就挑添加属性。之后,如果我点击编辑,但它也选择添加按钮属性。

再次,如果我重新启动应用程序,这时候如果我选择了编辑按钮(假设我已经在网格中的数据没有击中添加按钮)这个时候编辑形式填充编辑属性。现在点击添加按钮,现在选择编辑表单属性。我无法理解发生了什么。

起初,我并没有使用recreatefilter:真。但时间一直没有奏效。稍后我使用了recreatefilter:true。但结果是一样的。

任何机构可以请告诉我,我必须做的比来解决这个问题。

在此先感谢。

+0

我有同样的问题。你可以找到解决方案? – raranibar

回答

1

删除recreateform : true,

beforeInitData: function() { 
    $("#editmod" + this.id).remove(); 
} 

由于更换奥列格张贴这个答案。