Extjs 4.2 動態加載checkboxgroup

List<Risinstrumenttype> instrulist = Webimpl.getInstance().queryInstrumenttype();
String type = JsonUtil.list2json(instrulist);
json = "{items:" + type + "}";
//System.out.println(json);
response.getWriter().write(json);
{items:[{"typeid":"1001","typename":"CT"},{"typeid":"1001","typename":"CT"}]}

 

前臺的代碼!json

Ext.Ajax.request({
    url: 'showinstrument.do',//請求的地址。
    callback: function(options, success, response) {
        if (success === true) {
            var obj = eval("(" + response.responseText + ")");
            //拼接checkbox子項目
            var checkboxitems = "";
            for (var i = 0; i < obj.items.length; i++) {
                if (checkboxitems !== "")
                    checkboxitems += ",";
                else
                    checkboxitems += "[";
                var typename = obj.items[i].typename;
                var checkboxSingleItem = "{boxLabel:'" + typename + "',name:'instrumentkind',inputValue:'" + typename + "'";

           checkboxSingleItem += "}";
//                    alert(checkboxSingleItem);
                 checkboxitems += checkboxSingleItem;
            }
            checkboxitems += "]";
//                alert(checkboxitems);
            var itemsGroup = new Ext.form.CheckboxGroup({
                x: 10,
                y: 120,
                width: 845,
                fieldLabel: '種類',
                id: 'instrumentkind',
                disabled: true,
                labelWidth: 70,
                items: eval(checkboxitems)
            });

            Ext.getCmp('form1').add(itemsGroup); //這個是根據ID,添加到你想要顯示的那個from下。
            Ext.getCmp('form1').doLayout();//好象是,從新刷新那個form,原理我也不清楚。

        }
    }
});
相關文章
相關標籤/搜索