2012-03-06 21 views
0

まず、私はこれらのフォーラムで私と非常に似た他の投稿があることを知っていることを明確にしたいと思います。残念ながら、それらを使用して私はaddRowDataを動作させることに失敗しました。私はこのように定義されたテーブルを持っています:jqgrid addRowDataを動作させることができない

var tableDef = { 
     scroll: 1, 
     url:"/SCSalesDataReport/showReport/getSalesReportJSON", 
     datatype: "json", 
     colNames:['id','Type', 'Name', 'Total','In','Out'], 
     colModel:[ 
      { name: 'id', index: 'testid', hidden: true},  
      {name:'type',index:'type', width:10, sortable:true}, 
      {name:'name',index:'name', width:40, sortable:true}, 
      {name:'total',index:'total', width: 10, sortable:false}, 
      {name:'in',index:'in', width:10, sortable:true}, 
      {name:'out',index:'out', width:10, sortable:true}, ], 
     rowNum:100, 
     mtype: "GET", 
     sortname: 'id', 
     viewrecords: true, 
     height : '500', 
     altRows: true, 
     autowidth: true, 
}; 

そして、それは価値があるものとして、期待していたとおりにテーブルを作成しています。残念ながら、これらのフォーラムで見た投稿のいくつかを使って、作成したデータをテーブルに追加することはできません。私はこのように、リンクを介して行を追加しようとしている:このタグに接続されている

window.onload = function() { 

    var a = document.getElementById("addRow"); 
    a.onclick = function() { 
     var count = $("#grid").getGridParam("reccount"); 
     var newRowData = {'id':count, 'Type':"ADDEDTYPE", 'Name':"Insert 1", 'Total':"10",'In':"50",'Out':"40"}; 
     jQuery("#myTable").addRowData("id", newRowData); 
     jQuery("#myTable").trigger("reloadGrid"); 

     return false; 
    } 
} 

:誰かが私が私が間違ってやっているかを把握助けることができる場合

<a id="addRow" href="www.google.com">Oh please, for the love of all that is holy... add a row!</a> 

、それはと大いにになります。私はちょうど何かばかげたことをやっていること、あるいは何かを見落としていることを強く疑う。

ありがとうございます。

答えて

0

私はそこにreloadGridが必要ないと思います。私はそれを使用せず、私のnewRowData呼び出しは正常に動作します。また、ポジションのプロパティがaddRowDataの呼び出しで不足しています(必要な場合はわかりませんが、傷つけることはありません)。

また、newRowDataのハッシュキーは大文字と小文字をcolModelと一致させる必要があると思います。あなたは

http://www.trirand.com/jqgridwiki/doku.php?id=wiki:methods

でaddRowDataの定義を参照してください

など、newRowDataにキー「種類」、「名前」、などを持っているが、あなたのcolModelに、彼らは「タイプ」と呼ばれている、「名前」
関連する問題