extJS如何获取store的data并添加记录

extJS如何获取store的data并添加记录,第1张

按照API里的描述应该可以使用loadData(数组)方法可以加载数据

添加数据的话不能直接添加,因为store里存放的都是Record类型的数据,如果是ext3的话,可以简单点

var record = new commoditystore.recordType([id,sn,name])

commoditystore.add(record)

panel这个组件是没有store这个配置项的

不过要在panel里面添加数据,有2种比较好用的方法

1是可以使用XTemplate这个组件(也是extjs的组件之一)

2是可以先执行ajax请求,把数据拼装成html再update panel组件的body

不懂欢迎追问

Ext.onReady(function() {

    //只给leaf为true的节点加data,否则会与父节点展开事件发生冲突

    var store = Ext.create("Ext.data.TreeStore", {

        root:{

            expanded:true,

            children:[ {

                text:"detention",

                data:"html1.html",

                leaf:true

            }, {

                text:"homework",

                expanded:true,

                children:[ {

                    text:"book report",

                    data:"html2.html",

                    leaf:true

                }, {

                    text:"alegrbra",

                    data:"html3.html",

                    leaf:true

                } ]

            }, {

                text:"buy lottery tickets",

                data:"html4.html",

                leaf:true

            } ]

        }

    })

    Ext.create("Ext.tree.Panel", {

        store:store,

        rootVisible:false,

        listeners:{

            itemclick:function(v, r) {

                if (r.raw.data) {

                    //获取节点的data的值

                    alert(r.raw.data)

                }

            }

        },

        renderTo:Ext.getBody()

    })

})

在后面的面板中加一个panel,设置其html为

<iframe id="target" style="width:100%height:100%border:none"></iframe>

再修改刚才的itemclick事件

document.getElementById('target').src = r.raw.data


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11647621.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存