`

Jquery easyui中datagrid使用过程中getSelections出现选择总是一行的问题

阅读更多

今天在用datagrid时偶然发现一个问题,问题如下:

在使用 var rows = $("#datagride").datagrid('getSelections')的时候,获取选中的行数,在前台页面无论选中几行,获取rows.length的结果均为1,于是查看了一下easyui中jquery.easyui.min.js中的源码。源码如下:

 

function _4bb(_4bc){

var opts=$.data(_4bc,"datagrid").options;

var data=$.data(_4bc,"datagrid").data;

if(opts.idField){

return $.data(_4bc,"datagrid").selectedRows;

}else{

var rows=[];

opts.finder.getTr(_4bc,"","selected",2).each(function(){

var _4bd=parseInt($(this).attr("datagrid-row-index"));

rows.push(data.rows[_4bd]);

});

return rows;

}

};

 

错误原因是:我设置了idField属性,但是没有给唯一性字段设置唯一值,导致获取的值一直为1。修改后代码如图所示:



 

 

最后终结发现:如果在datagrid中设置了idField:‘id'时,在返回数据的时候要有id字段,并且id要唯一;如果不设置idField,会正常获取选中的行数。

分享到:
评论

相关推荐

    jquery easyui datagrid demo 详解

    jQuery EasyUI 是一个基于 jQuery 的前端框架,它提供了一系列丰富的组件,使得开发者可以轻松构建用户界面,而 Datagrid 是其中非常重要的一个组件,常用于数据展示和管理。本篇文章将详细解析 jQuery EasyUI ...

    jQuery EasyUI 1.3.5 离线简体中文API文档

    datagrid:改进检查行时候的性能; menu:允许追加菜单分隔符; menu:新增“hideOnUnHover”属性用于在鼠标离开菜单的时候指示是否需要隐藏菜单; slider:新增“clear”和“reset”方法; tabs:新增...

    使用Jquery_EasyUi常见问题解决方案

    在使用Jquery_EasyUi开发过程中,特别是在处理表单数据时,经常会遇到需要清空表单的情况,例如在弹出窗口中进行数据录入之后需要清除上一次的数据以便下次使用。传统的做法是对每一个输入框或组件进行单独的清空...

    easyUidataGrid

    `easyUidataGrid`是一个基于`EasyUI`框架的数据网格组件的使用示例,适合初学者学习和使用。`EasyUI`是一个轻量级的前端JavaScript库,它基于jQuery,提供了丰富的用户界面组件,包括数据网格、下拉框、表单、窗口等...

    jQuery Easyui Datagrid实现单行的上移下移及保存移动的结果

    在本文中,我们将探讨如何使用jQuery Easyui的Datagrid组件实现单行的上移和下移功能,并且在操作后保存这些移动的结果。jQuery Easyui Datagrid是一个强大的数据展示工具,它提供了丰富的交互性和自定义选项,使得...

    jquery_easyUI项目完整版(毕业设计)

    jQuery EasyUI 是一款基于 jQuery 的前端框架,它提供了丰富的用户界面组件,如对话框、表单、菜单、树形控件等,大大简化了Web应用程序的开发工作。在这个毕业设计项目中,我们将深入探讨如何利用jQuery EasyUI ...

    easyui导出excel工具

    在IT行业中,EasyUI是一个基于jQuery的前端框架,它提供了丰富的UI组件,使得开发者能够快速构建用户界面。在处理数据展示时,datagrid是EasyUI的一个重要组件,它用于展示表格形式的数据。当需要将这些数据显示在...

    easyui项目实战

    首先,EasyUI 的核心在于其组件化的设计,每个组件都有明确的功能和用途,如 `datagrid` 用于展示数据表格,`combobox` 用于创建下拉选择框,`dialog` 则可以创建弹出对话框。这些组件不仅具有基本的交互功能,还...

    SYPRO示例项目源码和EasyUI入门视频教程

    第08课(讲解datagrid的查询,toolbar的多种创建方式,清空查询条件,扩展一个form序列化object的方法,load、reload方法的使用和区别,datetimebox初始化时需要注意的问题) 第09课(讲解datagrid的行编辑模式,增加、...

    以JSON形式将JS中Array对象数组传至后台的方法

    业务是需要将前台jQuery easyUI DataGrid列表中所选的若干行的数据传到后台进行update操作   通常情况下我们会获取所选取行对象的ID,通过循环及简单封装拼凑成一个长String传送过去,并在Service层解释再通过...

    java经验积累

    在示例中,`datagrid`组件提供了获取选中行的方法,`getSelections`返回选定的行对象数组。然后,通过遍历这个数组,收集`taskId`,最后通过`$.post`发送请求到`delFlowAuditUserTask.action`,删除指定的记录。 6....

    JEECG UI标签库帮助文档v3.3

    - **insertRow**: 在指定位置插入一行数据。 - **updateRow**: 更新指定行数据。 - **deleteRow**: 删除指定行数据。 **2.1.4. 事件** - **onBeforeLoad**: 加载数据前触发。 - **onLoadSuccess**: 加载数据成功后...

Global site tag (gtag.js) - Google Analytics