extjs搜索json数据

extjs搜索json数据,第1张

可以的,需要注意的地方是直接访问json文件是不行的,要将json文件改成js后缀。因为要引入到头文件中,

json文件改成js文件完全没有副作用,注意json文件本身的格式就是了。

下面是代码:

<!DOCTYPE html>

<html xmlns=">

菜单加到一个toolbar上

设置菜单的事件

//下面是简单的摘子目前用的的一个例子

/

 顶部菜单

 /

Extdefine('XRSpagebarTop', {

    extend: 'ExttoolbarToolbar',

    dock: "top",

    border: "1 0 2 0",

    initComponent: function () {

        var me = this;

        //这里是对菜单进行解析 , 因为我从后台返回来的是 列表 , 而不是一个树 , 所以需要解析成 菜单的格式

        //参数$AdmingetMainMenu() 这个是从后台饭回来的数据的一个简单包装 , 在下面我一个样本

var mainMenu = thisparseMenu($AdmingetMainMenu());

meitems = mainMenu;

        thiscallParent();

    } , 

    //解析成菜单格式的数据

    parseMenu: function (menus) {

        var me = this;

        if (!(menus && menuslength > 0)) return false;

        //根据parentid生成树

        var map = {};

        var rs = [];

        Exteach(menus, function (n) {

            nid = "mainmenu_" + nid;

            ntext = nname;

            //这里是设置点击事件的 , 通过bind , 不需要设置scope

            nhandler = Extbind(meonClick, me);

            //下面的只是生成一个菜单的数据格式

            map[nid] = n;

            //如果找到父节点

            if (map["mainmenu_" + nparentid]) {

                var pn = map["mainmenu_" + nparentid];

                if (!pnmenu) {

                    pnhideOnClick = false;

                    pnmenu = {

                        items: []

                    };

                }

                if (nisSeparator == "1") nxtype = "menuseparator";

                pnmenuitemspush(n);

            } else {

                if (nisSeparator == "1") nxtype = "tbseparator";

                rspush(n);

            }

        }, this);

        return rs;

    },

    //这是一个点击事件

    onClick: function (menu, e) {

        if (!menu) return;

        //可以任意设置事件

        alert(menutext);

        //thisfireEvent('moduleclick', menu, 'menu');

    }

});

//下面是个返回的菜单数据样本 , 是个列表

        "mainMenu": [

        {

            "$id": "14",

            "id": 53,

            "name": "基础信息",

            "code": "",

            "menutype": null,

            "module": "",

            "moduleConfig": "          ",

            "method": "          ",

            "isWindow": null,

            "url": null,

            "iconCls": "ico_baseinfo",

            "parentid": 1,

            "path": "1,53",

            "ix": 24,

            "privilege": "6",

            "isSeparator": 0,

            "xtype": null,

            "disabled": null,

            "noprivilege": 0

        },

        {

            "$id": "35",

            "id": 54,

            "name": "系统代码管理",

            "code": "",

            "menutype": null,

            "module": "XRSbaseinfocodeList",

            "moduleConfig": "          ",

            "method": "          ",

            "isWindow": null,

            "url": null,

            "iconCls": "ico_code",

            "parentid": 53,

            "path": "1,53,54",

            "ix": 1,

            "privilege": "7",

            "isSeparator": 0,

            "xtype": null,

            "disabled": null,

            "noprivilege": 0

        },

        {

            "$id": "36",

            "id": 55,

            "name": null,

            "code": null,

            "menutype": null,

            "module": null,

            "moduleConfig": null,

            "method": null,

            "isWindow": null,

            "url": null,

            "iconCls": null,

            "parentid": 53,

            "path": "1,53,55",

            "ix": 2,

            "privilege": "7",

            "isSeparator": 1,

            "xtype": null,

            "disabled": null,

            "noprivilege": 0

        },

        {

            "$id": "37",

            "id": 57,

            "name": "部门机构",

            "code": "",

            "menutype": null,

            "module": "XRSbaseinfoorganizationList",

            "moduleConfig": "          ",

            "method": "          ",

            "isWindow": null,

            "url": null,

            "iconCls": "ico_org",

            "parentid": 53,

            "path": "1,53,57",

            "ix": 3,

            "privilege": "8",

            "isSeparator": 0,

            "xtype": null,

            "disabled": null,

            "noprivilege": 0

        },

        {

            "$id": "38",

            "id": 58,

            "name": "用户",

            "code": "",

            "menutype": null,

            "module": "XRSbaseinfouserList",

            "moduleConfig": "          ",

            "method": "          ",

            "isWindow": null,

            "url": null,

            "iconCls": "ico_user",

            "parentid": 53,

            "path": "1,53,58",

            "ix": 4,

            "privilege": "9",

            "isSeparator": 0,

            "xtype": null,

            "disabled": null,

            "noprivilege": 0

        },

        {

            "$id": "39",

            "id": 59,

            "name": "角色",

            "code": "",

            "menutype": null,

            "module": "XRSbaseinforoleList",

            "moduleConfig": "          ",

            "method": "          ",

            "isWindow": null,

            "url": null,

            "iconCls": "ico_role",

            "parentid": 53,

            "path": "1,53,59",

            "ix": 5,

            "privilege": "10",

            "isSeparator": 0,

            "xtype": null,

            "disabled": null,

            "noprivilege": 0

        }]

你根本就没熟悉SSH+extjs的流程,我跟你说下流程,喝了酒,可能说的不太清:

1、首先提交时可以同时提交的,使用

formsubmit({

params:{‘gridData’ : xxx}

});

其中formsubmit函数本身就会把form提交上去,然后param配置项里的xxx就应该是你想要传的grid

当然 有前提条件,首先在form中每个textfield组件定义name为“对象名属性名”的方式,如你提交的是用户信息,那么对象名可能是person,name值就是“personage”,代表用户年龄。后台也要有成员变量person,这样struts就能接受person对象,直接可以拿到其中的年龄。

其次,你所谓的传递grid,其实是传递store中得数据,方法是可以先将store的数据拿出来,然后转成json传,将json串赋值给xxx就可以了,后台用requestgetParameter("gridData");可以得到json串,再将其转化成对象,就可以得到对象的属性,也就是每条数据的信息了。你也可以在前台不转,直接传到后台,后台用数组接收,不过拿到每个属性不太好拿。

这样其实从前台拿到的是一个对象--------form传递过来的,还有一个应该是一个List集合,里面是grid的每一条数据,如果你想事务控制,我告诉真的就是写在一个service方法,因为你在action中调用的service方法的参数应该有form传过来的对象和那个List,在service当然就可以一起处理这些东西了,不明白就别说别人说的不对,你以为你就是对的啊。那是你没理解!

好吧,总结一下,前台传一个form对应的对象,再传一个grid的List,后台一个action同时接受这两个参数,然后调用service方法,此方法至少有两个参数,一个是form对应的对象,一个是grid对象的List,在service处理这两个参数,spring自动就会实现事务处理!

ExtJS 博大精深,不会就态度好点请教别人,别搞得自己像是不耻下问似,不一定有人理解,我也就是喝点酒,不然懂的人看你那几句白痴话就不愿意回答你。。。

以上就是关于extjs搜索json数据全部的内容,包括:extjs搜索json数据、Extjs中如何使用数据库中的数据,创建动态菜单、extjs 同时提交grid和form的数据到数据库中!!!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/web/9607693.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存