Ext formpanel loadRecord/load方法示例

  Ext formpanel loadRecord/load方法给formpanel加载数据示例

 

  Ext formpanel loadRecord是加载本地数据用的,注意参数一定要是Ext.data.Record(3-版本)或者Ext.data.Model(4+版本)实例对象,不能直接加载JSON对象。

  Ext formpanel load是加载远程数据用的,返回的数据格式如下,success为ture表示请求成功,数据放到data键名称

注意:data下的键名称一定要和你formpanel->items里面项目的name值一致,并且Ext.data.Record和Ext.data.Model的列名称也要一致。

 {"success": true, data:{"to": "showbo remote", "subject": "hello remote" }}
注意:4+版本使用JSON.parse来将json字符串转为json对象,一定要返回标准格式的json字符串,不能返回怪异模式的,要不会报错,参考:jQuery dataType指定为json的问题。并且注意这个2个方法不同版本的ext,formpanel并没有,但是baseForm是一定有的,所以formpanel一定要记得调用getForm获取baseForm后再调用这2个方法。
所有示例基于examples\form下的absform.html,absform.js做了些许改动,将form变量作为window作用域下的变量
var form//window作用域下
Ext.onReady(function() {
    form = new Ext.form.FormPanel({.....原来的代码

  Ext formpanel loadRecord/load方法示例如下

Ext formpanel loadRecord/load方法示例

Ext版本3-

<input type="button" onclick="loadRemoteRecord()" value="加载远程记录" /> <input type="button" onclick="loadLocalRecord()" value="加载本地记录" />
<script>
    function loadRemoteRecord() {
        form.getForm().load({ url: 'absrecord.js', method: 'get', failure: function () { alert('加载远程记录失败,请检查数据结构') } });
    }
    function loadLocalRecord() {
        var jsondata = { to: 'showbo local', subject: 'hello local' };
        var rm = Ext.data.Record.create(['to', 'subject']);
        var r = new rm(jsondata);
        form.getForm().loadRecord(r);
    }
</script>

Ext版本4+

<input type="button" onclick="loadRemoteRecord()" value="加载远程记录" /> <input type="button" onclick="loadLocalRecord()" value="加载本地记录" />
<script>
    function loadRemoteRecord() {
        form.getForm().load({ url: 'absrecord.js', method: 'get', failure: function () { alert('加载远程记录失败,请检查数据结构') } });
    }
    function loadLocalRecord() {
        var jsondata = { to: 'showbo local', subject: 'hello local' };
        Ext.define('rm', { extend: 'Ext.data.Model', fields: ['to', 'subject'] });
        var r = Ext.create('rm', jsondata);
        form.getForm().loadRecord(r);
    }
</script>

 

加支付宝好友偷能量挖...


原创文章,转载请注明出处:Ext formpanel loadRecord/load方法示例

评论(0)Web开发网
阅读(975)喜欢(0)extjs开发技巧