首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获取JqWidgets网格中所有未选定行索引的列表

如何获取JqWidgets网格中所有未选定行索引的列表
EN

Stack Overflow用户
提问于 2015-04-02 07:05:01
回答 2查看 1.6K关注 0票数 1

我试图获取jqwidget网格中所有未选定的行索引的列表。由于有一个预定义的方法来获取所有选定行索引的列表:

代码语言:javascript
复制
var allSelectedVals=[];

var rowindexes = jQuery('#userProfiles').jqxGrid('getselectedrowindexes');

for (var i = 0; i < rowindexes.length; i++) 
{
  var data = jQuery('#userProfiles').jqxGrid('getrowdata', rowindexes[i]);
  allSelectedVals.push(data.userId);
}

alert('allSelectedVals: ' + allSelectedVals);

是否也有类似的方法来获取未选定的行索引?

我会感谢你所有的帮助来得到它。提前感谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-02 08:18:55

没有用于此目的的内置方法,因此我在这里编写了简单的可能函数:我们获得总行数,并从选定项中删除所有ids (所选项是在选择时计算的,而不是在调用此方法时计算的,因此不需要任何意义上的努力)。

以下是一种方法:

代码语言:javascript
复制
function getUnselectedIndexes(selector)
{
    var selectedIndexes = $(selector).jqxGrid('getselectedrowindexes');

    var meta = $(selector).jqxGrid('getdatainformation');
    var total = meta.rowscount;

    var unSelectedIndexes = new Array();

    for (i = 0; i < total; i++)
    {
        if (selectedIndexes.indexOf(i) !== -1) 
        {
            continue;
        }

        unSelectedIndexes.push(i);
    }

    console.log(unSelectedIndexes);

    return unSelectedIndexies;
}

通过这样调用它,您可以获得所有未选择的索引:

代码语言:javascript
复制
getUnselectedIndexes("#userProfiles");
票数 1
EN

Stack Overflow用户

发布于 2015-04-02 07:50:46

jQWidgets网格的“get界”方法返回所有行-示例:

代码语言:javascript
复制
 var data = generatedata(5);
 var source = {
     localdata: data,
     datafields: [{
         name: 'firstname',
         type: 'string'
     }, {
         name: 'lastname',
         type: 'string'
     }, {
         name: 'productname',
         type: 'string'
     }, {
         name: 'date',
         type: 'date'
     }, {
         name: 'quantity',
         type: 'number'
     }, {
         name: 'price',
         type: 'number'
     }],
     datatype: "array"
 };

 var adapter = new $.jqx.dataAdapter(source);
 $("#jqxgrid").jqxGrid({
     width: 600,
     height: 100,
     theme: 'energyblue',
     source: adapter,
     sortable: true,
     selectionmode: 'singlecell',
     columns: [{
         text: 'First Name',
         datafield: 'firstname',
         columngroup: 'Name',
         width: 90
     }, {
         text: 'Last Name',
         columngroup: 'Name',
         datafield: 'lastname',
         width: 90
     }, {
         text: 'Product',
         datafield: 'productname',
         width: 170
     }, {
         text: 'Order Date',
         datafield: 'date',
         width: 160,
         cellsformat: 'dd-MMMM-yyyy'
     }, {
         text: 'Quantity',
         datafield: 'quantity',
         width: 80,
         cellsalign: 'right'
     }, {
         text: 'Unit Price',
         datafield: 'price',
         cellsalign: 'right',
         cellsformat: 'c2'
     }]
 });

 $("#jqxbutton").jqxButton({
     theme: 'energyblue',
     width: 200,
     height: 30
 });

 $('#jqxbutton').click(function () {
     var rows = $('#jqxgrid').jqxGrid('getboundrows');
     var result = "";
     for (var i = 0; i < rows.length; i++) {
         var row = rows[i];
         result += row.firstname + " " + row.lastname + " " + row.productname + " " + row.date + " " + row.quantity + " " + row.price + "\n";
     }
     alert(result);
 });

http://jsfiddle.net/jqwidgets/3LLVW/。有了所选行的索引,就可以循环遍历行,并检查行的边界索引是否在rowIndexes数组中。如果不是,则行不会被选中。

示例:http://jsfiddle.net/jqwidgets/yzqswcvr/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29406972

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档