Javascript 将JS包装到GWT单元表中

Javascript 将JS包装到GWT单元表中,javascript,jquery,gwt,Javascript,Jquery,Gwt,在GWT单元表中,我包装了jquery功能,比如使用JSNI进行分组。但是它的抛出JavaScriptObject Exception函数是未定义的 table.setRowData(loadContactInfo()); //To Load Data loadGridData(); //Calling JSNI For Grouping private List<ContactInfor> loadContactInfo() {

在GWT单元表中,我包装了jquery功能,比如使用JSNI进行分组。但是它的抛出JavaScriptObject Exception函数是未定义的

table.setRowData(loadContactInfo());  //To Load Data
    loadGridData();    //Calling JSNI For Grouping 

     private List<ContactInfor> loadContactInfo() {
            // To load data
    List<ContactInfor> lstContact = new ArrayList<ContactInfor>();

    lstContact.add(new ContactInfor("XXX", "YYY", "t", "26", "0300",Big Street"));
            return ContactInfor;
    }

    public static native void loadGridData()/*-{
       //calling js for grouping functionality which contains table tr element
     }-*/; 

由于在重新绘制单元格表之前需要几毫秒的时间,因此调用JSNI方法会引发JSO异常。在加载和呈现数据之后,是否还有其他方法将JS包装到单元格表中?对此有什么建议吗?

上面的代码中只有很少的信息,但是如果您的问题是由于重新绘制和jquery之间的时间关系造成的,那么您可能需要使用Scheduler.get.schedulederferred命令让浏览器在再次更改dom之前完成它的工作


感谢您的回复,我在加载数据后使用了flush语句,请参见下面的代码

    table.setRowData(loadContactInfo());  
    **table.flush();    //flush force to render immediately**
    loadGridData();    

     private List<ContactInfor> loadContactInfo() {
            // To load data
    List<ContactInfor> lstContact = new ArrayList<ContactInfor>();

    lstContact.add(new ContactInfor("XXX", "YYY", "t", "26", "0300",Big Street"));
            return ContactInfor;
    }

    public static native void loadGridData()/*-{
       //calling js for grouping functionality which contains table tr element
     }-*/; 
还可以使用Scheduler.get.schedulederferred添加延迟