【求助】关于EXTJS的一个问题

CountFloyd 2013-05-26 04:59:41
如下面的代码:
1、目前报panel.add(node)这个node没有值。
2、如果把panel.add(node)移到Ext.Ajax.request里面,node的值倒是可以取到,但是node无法渲染到panel上(页面上什么都没有)。
3、试了一下callback,但是这个params还是传不出来值。
请大家帮忙看一下,谢谢!

App.Org = function() {

return {
currentFormValues : {},
render : function(id) {
var panel = Ext.getCmp(id);
panel.body.dom.innerHTML = "";
/*var loadData = function(params) {*/
Ext.Ajax.request({
method : 'post',
url : 'org/orgList',
/*callback : function(options, success, response) {*/
success: function(resp, opts) {
var rText = Ext.util.JSON.decode(resp.responseText);
// Ext.Msg.alert('提示', response.responseText);
var params = rText.data;///////////
//Ext.Msg.alert('params', params);
var node = new Ext.tree.TreePanel({
width : 250,
heigth : 250,
loader : new Ext.tree.TreeLoader(),
root : {
text : 'Tree Node',
children : params///////
}
});

}
});

panel.add(node);///////


}
};
}();
...全文
62 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
CountFloyd 2013-05-26
  • 打赏
  • 举报
回复
感谢版主! 按照你的方法,搞定了,再panel.add后面增加了Ext.getCmp(id).doLayout();就全部显示出来了。之前是因为doLayout是在main页面上,导致无法渲染。 用的是extjs3.4.0
Go 旅城通票 2013-05-26
  • 打赏
  • 举报
回复
node是匿名函数success中的变量,外部无法获取到,当然未定义
App.Org = function() {
     
    return {
        currentFormValues : {},
        render : function(id) {
            //var panel = Ext.getCmp(id);
            //panel.body.dom.innerHTML = "";
            /*var loadData = function(params) {*/
                Ext.Ajax.request({
                    method : 'post',
                    url : 'org/orgList',
                    /*callback : function(options, success, response) {*/
                    success: function(resp, opts) {
                        var rText = Ext.util.JSON.decode(resp.responseText);
                        // Ext.Msg.alert('提示', response.responseText);
                        var params = rText.data;///////////
                         //Ext.Msg.alert('params', params);
                        var node = new Ext.tree.TreePanel({
                        width : 250,
                        heigth : 250,
                        loader : new Ext.tree.TreeLoader(),
                        root : {
                            text : 'Tree Node',
                            children : params///////
                        }
                    });
         ///////////////全部放到这里来。还有ext版本是多少的。。以后这个中问题要提到版本,ext这么多版本,3和4差别很大    
            var panel = Ext.getCmp(id);
            panel.body.dom.innerHTML = "";
            panel.add(node);///////
                    }
                });
             
            //panel.add(node);///////
             
             
        }
    };
}();

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧