Extjs从grid加载数据到formPanel中combox不显示text

    在Extjs的编码中,从gird表格里选择一条记录,加载到form表单里来,是经常要做的一件事。然后,当form里有combox的话,加载数据进来,往往只是单纯的加载了一个value,而不是显示我们想要的那个displayValue。

     其实原因很简单,combox中的数据源是异步加载的方式,所以form.getForm.loadRecord(record)的时候,combox中的store此时还没有加载数据进来,so结果就如我们遇到的问题那样,combox最后显示的只是个value。

     今天搜了一下google,在其他人的blog上看到了解决办法。

store_combo是combox的store,store先load,在回调函数里,再进行form表单的数据加载。这样就解决问题了。

     PS:如果各位还有更好的办法,请告诉我哦~! 

 

  
  
  
  
  1. store_combo.load({ 
  2.                 callback : function(r, options, success) { 
  3.                     if (success) { 
  4.                         Ext.getCmp('register_form').getForm().loadRecord(record); 
  5.                     } else { 
  6.                         Ext.Msg.alert('失败','角色数据载入失败'); 
  7.                     } 
  8.                 } 
  9.             }); 

 

你可能感兴趣的:(ExtJs,combox,loadRecord)