gpt4 book ai didi

dojo - 如何获取 Dgrid 选择混合中选定行的列表

转载 作者:行者123 更新时间:2023-12-02 19:28:42 26 4
gpt4 key购买 nike

我正在 Dgrid ondemandgrid 中使用选择器和选择混合。我使用复选框作为选择器。以下是我的问题。

  1. 如何在 html 按钮点击事件中获取 javascript 中选中行的列表?我知道有 dgrid-select 和 deselect 事件,但我想要按钮点击事件中所有选中行的列表。<
  2. 目前,如果我单击任意位置的行,复选框就会被选中。但我只想在单击复选框时选择该行。如何实现这一点?

这是我的代码

             require([
"dgrid/OnDemandGrid",
"dojo/store/JsonRest",
"dojo/dom",
"dojo/dom-style",
"dojo/_base/declare",
"dgrid/extensions/ColumnResizer",
"dgrid/Selection",
"dgrid/selector"
], function (OnDemandGrid,JsonRest,dom,domStyle,declare,ColumnResizer,Selection, selector) {
var Layout = [
selector({ label: selector({}), selectorType: "checkbox" }),
{field: 'srno',label: 'Sr No'},
{field: "Name",label: "name"}
];
jsonstore = new JsonRest({target: url,idProperty: "srno"});
grid = new(declare([OnDemandGrid,ColumnResizer,Selection]))({
store: jsonstore,
columns: Layout,
minRowsPerPage : 40,
maxRowsPerPage : 40,
keepScrollPosition : true,
allowSelectAll: true,
loadingMessage: "Loading data...",
noDataMessage: "No results found."
}, "grid");
domStyle.set(dom.byId("grid"),"height","210px");
grid.startup();
grid.on("dgrid-select", function(event){
//
});
grid.on("dgrid-deselect", function(event){
//
});

});

最佳答案

以下是您的问题的解决方案:

    var Layout = [
selector({ label: '', sortable: false}),
{field: 'srno',label: 'Sr No'},
{field: "Name",label: "name"}
];
jsonstore = new JsonRest({target: url,idProperty: "srno"});
grid = new(declare([OnDemandGrid,ColumnResizer,Selection]))({
store: jsonstore,
columns: Layout,
minRowsPerPage : 40,
maxRowsPerPage : 40,
selectionMode: "none",
deselectOnRefresh: false,
keepScrollPosition : true,
allowSelectAll: true,
loadingMessage: "Loading data...",
noDataMessage: "No results found."
}, "grid");



new Button({
label: "Ok",
onClick: function () {

// here you can use grid.selection to get the list of selected rows.
// it is an object with { 'rowid': true} format for example, like below
array.forEach(grid.store.data, function (item) {
if (grid.selection[item.id]) {
//your code to handle this selected item
}
});
})
}, 'button');

关于dojo - 如何获取 Dgrid 选择混合中选定行的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18672716/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com