Checkbox 如何使用格式化程序将dojo组合框添加到数据网格?

Checkbox 如何使用格式化程序将dojo组合框添加到数据网格?,checkbox,dojo,dojox.grid.datagrid,dijit.form,Checkbox,Dojo,Dojox.grid.datagrid,Dijit.form,如何使用格式化程序将dojo组合框添加到我的DataGrid?从我所读到的内容来看,我认为我应该能够使用格式化程序将dojo组合框添加到我的DataGrid,就像我使用dojo复选框所做的那样(以及我创建的另一个html页面上的dojo按钮)。我找不到这方面的好例子。我正在使用Dojo1.10.0 以下是我的现有代码,由于我的formatterComboboxformatter出现问题,因此无法加载该代码: 测试小部件 dojoConfig={async:true,parseOnLoad:fa

如何使用格式化程序将dojo
组合框添加到我的
DataGrid
?从我所读到的内容来看,我认为我应该能够使用
格式化程序
将dojo
组合框添加到我的
DataGrid
,就像我使用dojo
复选框所做的那样(以及我创建的另一个html页面上的dojo
按钮
)。我找不到这方面的好例子。我正在使用Dojo1.10.0

以下是我的现有代码,由于我的
formatterCombobox
formatter出现问题,因此无法加载该代码:


测试小部件
dojoConfig={async:true,parseOnLoad:false}
require(['dojox/grid/DataGrid','dojo/data/ItemFileReadStore','dijit/form/CheckBox','dojo/domReady!'],
函数(DataGrid、ItemFileReadStore、复选框){
函数格式化程序(){
var w=新复选框({
标签:“使用输入”,
onClick:function(){
警报(“复选框已选中!(或未选中!)”;
}
});
w、 _destroonremove=true;
返回w;
函数formatterCombobox(){
var combobox=新组合框({
标签:“组合”,
onClick:function(){
警报(“复选框已选中!(或未选中!)”;
}
});
组合框。_destroonremove=true;
返回组合框;
}
}
变量布局=[
{name:'Feed',字段:'Feed'},
{名称:'任务',字段:'任务',宽度:6.5,
样式:“文本对齐:居中;高度:21px;”},
{名称:'Mission Override',字段:'missionoverride',宽度:6.5,
格式化程序:格式化程序,/*自定义格式,添加复选框*/
样式:“文本对齐:居中;”
},
{名称:'OpMode',字段:'OpMode',宽度:6.5,
样式:“文本对齐:居中;高度:21px;”},
{name:'OpMode Override',字段:'opmodeoverride',宽度:6.5,
格式化程序:格式化程序,/*自定义格式,添加复选框*/
样式:“文本对齐:居中;高度:21px;”
},
{名称:“平台”,字段:“平台”,宽度:6.5,
样式:“文本对齐:居中;高度:21px;”},
{名称:'尾号',字段:'尾号',宽度:6.5,
样式:“文本对齐:居中;高度:21px;”
},
{名称:'Producer Org',字段:'producerrorg',宽度:6.5,
样式:“文本对齐:居中;高度:21px;”
},
];
var store=newitemfilereadstore({
数据:{
标识符:“提要”,
项目:[
{feed:'1.feed1',任务:'mission1',覆盖:'',模式:'',覆盖:'',平台:'',编号:'236',组织:'SA'},
{feed:'2.feed2',任务:'mission2',覆盖:'',模式:'',覆盖:'',平台:'',编号:'980',组织:'SA'},
{feed:'3.feed3',任务:'mission3',覆盖:'',模式:'',覆盖:'',平台:'',编号:'731',组织:'SA'},
{feed:'4.feed4',任务:'mission4',覆盖:'',模式:'',覆盖:'',平台:'',编号:'415',组织:'SA'},
{feed:'5.feed5',任务:'mission5',覆盖:'',模式:'',覆盖:'',平台:'',编号:'899',组织:'SA'},
]
}
});
要求([
“dojo/store/Memory”、“dijit/form/ComboBox”、“dojo/domReady!”
],函数(内存,组合框){
var stateStore=新内存({
数据:[
{姓名:“阿拉巴马州”,id:“AL”},
{姓名:“阿拉斯加”,id:“AK”},
{名称:“美属萨摩亚”,id:“AS”},
{姓名:“亚利桑那州”,id:“亚利桑那州”},
{姓名:“阿肯色州”,id:“AR”},
{名称:“欧洲武装部队”,id:“AE”},
{姓名:“太平洋武装部队”,id:“AP”},
{姓名:“美洲武装部队”,id:“AA”},
{姓名:“加利福尼亚”,id:“CA”},
{姓名:“科罗拉多”,id:“CO”},
{姓名:“康涅狄格州”,id:“CT”},
{姓名:“特拉华州”,id:“德”}
]
});
var comboBox=新组合框({
id:“stateSelect”,
名称:“国家”,
价值:“加州”,
商店:stateStore,
searchAttr:“名称”
},“stateSelect”).startup();
});
var grid=新的数据网格({
id:'网格',
店:店,,
结构:布局,
自动宽度:正确,
自动高度:真
});
grid.placeAt('gridContainer');
grid.startup();
});

require(['dojox/grid/DataGrid','dojo/data/ItemFileReadStore','dijit/form/CheckBox','dijit/form/ComboBox','dojo/domReady!'],
函数(DataGrid、ItemFileReadStore、复选框、组合框){
函数格式化程序(){
var w=新复选框({
标签:“使用输入”,
onClick:function(){
警报(“复选框已选中!(或未选中!)”;
}
});
w、 _destroonremove=true;
返回w;
}
函数formatterCombobox(){
var combobox=新组合框({
标签:“组合”,
onClick:function(){
警报(“复选框-已选中!”(或取消选中
<script>

        require(['dojox/grid/DataGrid', 'dojo/data/ItemFileReadStore', 'dijit/form/CheckBox', "dijit/form/ComboBox",  'dojo/domReady!'],
                function (DataGrid, ItemFileReadStore, CheckBox, ComboBox) {
                    function formatter() {
                        var w = new CheckBox({
                            label: "Use Input",
                            onClick: function () {
                                alert("CheckBox - Checked! (or unchecked!)");
                            }
                        });
                        w._destroyOnRemove = true;
                        return w;

                    }

                    function formatterCombobox() {
                        var combobox = new ComboBox({
                            label: "Combo",
                            onClick: function () {
                                alert("CheckBox - Checked! (or unchecked!)");
                            }
                        });
                        combobox._destroyOnRemove = true;
                        return combobox;
                    }

                    var layout = [
                        {name: 'Feed', field: 'feed'},
                        {name: 'Mission', field: 'mission', width: 6.5,
                            styles: 'text-align: center; height: 21px;'},
                        {name: 'Mission Override', field: 'missionoverride', width: 6.5,
                            formatter: formatter, /*Custom format, add a CheckBox. */
                            styles: 'text-align: center;'
                        },
                        {name: 'OpMode', field: 'opmode', width: 6.5,
                            styles: 'text-align: center; height: 21px;'},
                        {name: 'OpMode Override', field: 'opmodeoverride', width: 6.5,
                            formatter: formatter, /*Custom format, add a CheckBox. */
                            styles: 'text-align: center; height: 21px;'
                        },
                        {name: 'Platform', field: 'platform', width: 6.5,
                            formatter: formatterCombobox,
                            styles: 'text-align: center; height: 21px;'},
                        {name: 'Tail Number', field: 'tailnumber', width: 6.5,
                            styles: 'text-align: center; height: 21px;'
                        },
                        {name: 'Producer Org', field: 'producerorg', width: 6.5,
                            formatter: formatterCombobox,
                            styles: 'text-align: center; height: 21px;'
                        },
                    ];
                    var store = new ItemFileReadStore({
                        data: {
                            identifier: "feed",
                            items: [
                                {feed: '1. feed1', mission: 'mission1', override: '', mode: '', override: '', platform: '', number: '236', org: 'SA'},
                                {feed: '2. feed2', mission: 'mission2', override: '', mode: '', override: '', platform: '', number: '980', org: 'SA'},
                                {feed: '3. feed3', mission: 'mission3', override: '', mode: '', override: '', platform: '', number: '731', org: 'SA'},
                                {feed: '4. feed4', mission: 'mission4', override: '', mode: '', override: '', platform: '', number: '415', org: 'SA'},
                                {feed: '5. feed5', mission: 'mission5', override: '', mode: '', override: '', platform: '', number: '899', org: 'SA'},
                            ]
                        }
                    });

                    require([
                        "dojo/store/Memory", "dijit/form/ComboBox", "dojo/domReady!"
                    ], function (Memory, ComboBox) {
                        var stateStore = new Memory({
                            data: [
                                {name: "Alabama", id: "AL"},
                                {name: "Alaska", id: "AK"},
                                {name: "American Samoa", id: "AS"},
                                {name: "Arizona", id: "AZ"},
                                {name: "Arkansas", id: "AR"},
                                {name: "Armed Forces Europe", id: "AE"},
                                {name: "Armed Forces Pacific", id: "AP"},
                                {name: "Armed Forces the Americas", id: "AA"},
                                {name: "California", id: "CA"},
                                {name: "Colorado", id: "CO"},
                                {name: "Connecticut", id: "CT"},
                                {name: "Delaware", id: "DE"}
                            ]
                        });

                        var comboBox = new ComboBox({
                            id: "stateSelect",
                            name: "state",
                            value: "California",
                            store: stateStore,
                            searchAttr: "name"
                        }, "stateSelect").startup();
                    });

                    var grid = new DataGrid({
                        id: 'grid',
                        store: store,
                        structure: layout,
                        autoWidth: true,
                        autoHeight: true
                    });
                    grid.placeAt('gridContainer');
                    grid.startup();
                });
    </script>