2012-02-14 88 views
1

您好我正在使用dojo和jqgrid庫與codeignitor。它工作正常。我已經實現了用於從數據庫列出數據的UI和jqgrid的dojo。它也可以正常工作。當我採取行動,插入,更新,刪除,jqgrid不反駁chanes。它不會從數據庫重新加載數據。這是我的代碼。使用Dojo和jqgrid與codeignitor

$.ajax({ 
    type: "POST", 
    url: sitepath+"factory/addfactory", 
    dataType: "json", 
    data:{factory_name:factory_name,address:address,city:city,state:state,country:country,pincode:pincode,active:active}, 
     success:function(){ 
     } 
    }); 
dijit.byId('dialogAddFactory').hide(); 
reload_grid(); ] 

function reload_grid() 
{ 
    $("#factorylist").trigger("reloadGrid"); 
} 

上面的ajax調用是在數據庫中插入opetration。 和reload_grid()函數用於重新加載jqgrid。 它會告訴我,控制檯中的數據是完美的,但它沒有顯示我在網格中。 somethimes它顯示我,有些時候它不是.. 可以任何人有這個想法.. 謝謝。

+0

使用螢火蟲?告訴你一個錯誤?如果將觸發器直接放入動作ajax中,會發生什麼情況? – csotelo 2012-07-31 13:07:39

+0

你有公開的網址供我們看看嗎? – seangates 2012-09-12 05:31:11

回答

0

這將是很好刷新電網,那麼你resive從服務器的成功性反應,並添加一些調試出

success:function(data){ 
     $("#factorylist").trigger("reloadGrid"); 
     console.log('ok'); 
    } 
1

似乎reload_grid()Ajax響應之前執行。在ajax響應之後使用異步或重新加載網格。

方法 - I:使用異步

$.ajaxSetup({async: false}); 
$.ajax({ 
    type: "POST", 
    url: sitepath+"factory/addfactory", 
    dataType: "json", 
    data:{factory_name:factory_name,address:address,city:city,state:state,country:country,pincode:pincode,active:active}, 
     success:function(){ 
     } 
}); 
dijit.byId('dialogAddFactory').hide(); 
reload_grid(); 
function reload_grid() 
{ 
    $("#factorylist").trigger("reloadGrid"); 
} 

方法 - II:重新加載Ajax響應後的網格。

$.ajax({ 
    type: "POST", 
    url: sitepath+"factory/addfactory", 
    dataType: "json", 
    data:{factory_name:factory_name,address:address,city:city,state:state,country:country,pincode:pincode,active:active}, 
     success:function(){ 
      dijit.byId('dialogAddFactory').hide(); 
      reload_grid(); 
     } 
}); 
function reload_grid() 
{ 
    $("#factorylist").trigger("reloadGrid"); 
} 
+0

添加了一些示例代碼 – sujoy 2014-08-06 07:01:10