在dojo内通过编程方式在网格中添加单选按钮

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在dojo内通过编程方式在网格中添加单选按钮相关的知识,希望对你有一定的参考价值。

我想为每行添加单选按钮。我正在搜索一些在线dojo示例,以编程方式添加单选按钮,但找不到解决方案。请提出每次添加新行时如何在每行的column1之前添加单选按钮的建议。以下是小提琴:http://jsfiddle.net/Q9GYv/59/

示例代码:

    /*create a new grid*/
    var grid = new DataGrid({
        id: 'grid',
        store: store,
        structure: layout,
        rowSelector: '20px'
    });

    /*append the new grid to the div*/
    grid.placeAt("gridDiv");

    /*Call startup() to render the grid*/
    grid.startup();

    var id = 2;

    var button = new Button({
        onClick: function () {
            console.log(arguments);
            store.newItem({
                id: id,
                col2: "col2-" + id,
                col3: "col3-" + id,
                col4: "col4-" + id
            });
            id++;
        }
    }, "addRow");
});
答案

有几种方法可以做到这一点,但是我能想到的最简单的方法就是更改布局,然后在布局中添加一个单选按钮(dojox / grid / _Radioselector)。

类似

var layout = [
    { type: "dojox.grid._RadioSelector"},
    [{
        'name': 'Column 1',
            'field': 'id',
            'width': '100px'
    }, {
        'name': 'Column 2',
            'field': 'col2',
            'width': '100px'
    }, {
        'name': 'Column 3',
            'field': 'col3',
            'width': '200px'
    }, {
        'name': 'Column 4',
            'field': 'col4',
            'width': '150px'
    }]
];

我已经更新了您的小提琴here,向您展示了它的完成方式。

以上是关于在dojo内通过编程方式在网格中添加单选按钮的主要内容,如果未能解决你的问题,请参考以下文章

Dojo RadioButton,以编程方式设置组

DOJO Datagrid 通过按钮删除行

dojo 增强网格过滤器 - 以编程方式设置列 A 大于某个数字

以编程方式创建 dojo 数据网格“抱歉发生错误”

通过事件处理程序启用 Dojo 按钮

获取 Dojo 单选按钮值?