Ext 前台代码集锦

2017-04-20  本文已影响0人  hi句身

引言

正文

var FnGridPanel1 = function () {
    App.tplLabourSer.store.proxy.setExtraParam("SearchOrgID", App.ddfOrgNameId.getValue());
    App.btnOk.setDisabled(true);
    App.tplLabourSer.getRootNode().reload({
    callback: function (records, operation, success) {
        if (success) {
            App.tplLabourSer.getRootNode().expand();
            App.tplLabourSer.store.proxy.setExtraParam("SearchOrgID", "");
            App.btnOk.setDisabled(false);
        }
    }
});
};
var initComboxByValue = function (comb) {
    var value = comb.getValue();
    comb.setSelectedItems({ value: value });
}

var combs = App.frmDetail.queryBy(function (item) {
    return item.getXType() == 'combobox';
})
Ext.Array.each(combs, function (item) {
    initComboxByValue(item);
});

function setReadOnlyForAll(form, readOnly) {
    Ext.suspendLayouts();
    form.getForm().getFields().each(function (field) {
        field.setReadOnly(readOnly);
    });
    Ext.resumeLayouts();
}
function getSelectNodeId() {
    var items = App.tplLabourSer.selModel.selected.items;
    if (items.length > 0) {
        return items[0].data.id;
    }
    return '';
}
// grid取到行的值方式.  多考虑record的概念
App.gpSettleOtherDtl.store.data.items[0]
App.gpSettleOtherDtl.store.data.items[0].data 
App.gpSettleOtherDtl.store.data.items[0].raw
// tree取node概念, 多考虑node概念
  // 这里getView()获得当前已展开节点, 所以数量一直在变, 要获得具体的值, 通过`selectPath()` 方式选择
App.tplLabourSer.getView().store.data.items[123].getPath();
App.tplLabourSer.selectPath('/root/00000000-0000-0000-00000001498723179/F93F5465-CC34-4A08-913A-D29EA100B922')
//获取节点方式.
var m = App.tplLabourSer.getRootNode()
m.childNodes
m.childNodes[0].data
<ext:TreeStore runat="server" ID="mainStore" AutoLoad="false">
    <Proxy>
    </Proxy>
    <Parameters>                          
        <ext:StoreParameter Name="IsContainOver" Value="App.IsContainOver.getValue()" Mode="Raw"> ....
        </ext:StoreParameter>
    </Parameters>
    <Listeners>                            
        <Load Handler="SetSpecNode(App.tplLabourSer,node,App.hdLabourID.getValue())" />
    </Listeners>
</ext:TreeStore>

function SetSpecNode(tree, pnode, laborID) {
    if (!pnode) return;
    var hasFinded = false;
    pnode.childNodes.forEach(function (item) {
        if (item.data.leaf) {
            if (item.data.LabourSerRanksID == laborID) {
                hasFinded = true;
                tree.selModel.select(item);
                item.expand(false);
                return;
            }
        }
    });
    if (!hasFinded) {
        var node = pnode.childNodes[0];
        tree.selModel.select(node);
        node.expand(false);
    } 
}

题外话

App.gpContract.selModel.selected.items[0]
App.gpContract.selModel.getSelection()[0]
App.gpContract.getView().getSelectionModel().getSelection()[0]
上一篇 下一篇

猜你喜欢

热点阅读