`
kfcman
  • 浏览: 399419 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

bootstrap-table中formatter使用ajax返回数据进行回显

 
阅读更多

bootstrap-table中formatter使用ajax返回数据进行回显

开发中需要实现这样一个功能:会员管理添加时的充值模板可以复选框勾选多个充值模板,这里存的数据是多个充值模板的id,但是列表需要显示这个充值模板的名称,故需要在formatter中使用ajax进行后台交互查询出这些id对应的模板名称,现对ajax返回数据绑定问题做个记录。

 

一、后台controller请求

/*

 数据列表回显充值模板名字

  */

 @PostMapping("/selectRechageSchemeNameByIds")

 @ResponseBody

 public R selectRechageSchemeNameByIds(String ids) {

   String idArray[] = ids.split(",");

   StringBuilder rechageSchemeName = new StringBuilder();

   if (idArray.length > 0) {

       for (String id : idArray) {

           MemberRechargeScheme memberRechargeScheme = memberRechargeSchemeService.selectMemberRechargeSchemeById(Long.valueOf(id));

           if (memberRechargeScheme != null) {

               rechageSchemeName.append(memberRechargeScheme.getRechageSchemeName() + ",");

           }

       }

   }

   if (rechageSchemeName.length() > 0) {

       rechageSchemeName.deleteCharAt(rechageSchemeName.length() - 1);

   }

   R r = R.success();

   r.put("rechageSchemeName", rechageSchemeName);

   return r;

}

 

二、对应列中,formatter操作

{

    field: 'rechargeSchemeId',

    title: '充值模板',

    formatter: function (value, row, index) {

        if (value.length > 0) {

            var rechageSchemeName;

            $.ajax({

                url: prefix + "/selectRechageSchemeNameByIds", //请求后台

                type: "post",

                data: {"ids": value},

                async: false,

                success: function (data) {

                    if (data.code == 0) {

                        if (data.rechageSchemeName.length > 0) {

                            rechageSchemeName = data.rechageSchemeName;

                        }

                    }

                }

            });

            return rechageSchemeName;

        }

    }

}

 

 

充值模板展示数据格式化

 

需要特别注意的有两点:
(1)、ajax请求必须设置为同步请求: async: false,异步请求返回的数据无法回显。
(2)、不可在success方法中直接返回data.rechageSchemeName,需要设置变量rechageSchemeName,给它赋值之后再返回此变量。下面这种方式数据无法回显:

 

{

    field: 'rechargeSchemeId',

    title: '充值模板',

    formatter: function (value, row, index) {

        if (value.length > 0) {

            $.ajax({

                url: prefix + "/selectRechageSchemeNameByIds", //请求后台

                type: "post",

                data: {"ids": value},

                async: false,

                success: function (data) {

                    if (data.code == 0) {

                        if (data.rechageSchemeName.length > 0) {

                            return data.rechageSchemeName;

                        }

                    }

                }

            });

        }

    }

}

 

 

https://blog.csdn.net/qq_34896730/article/details/102680255

 

 

 

分享到:
评论

相关推荐

    bootstrap-table可编辑下拉框editable js及css及bootstrap-table-editable.js以及使用实例

    在Bootstrap Table中集成`bootstrap-editable`插件,首先要确保已经引入了必要的CSS和JavaScript文件。这些文件通常包括Bootstrap的核心库、jQuery、bootstrap-table主文件,以及bootstrap-table-editable.js。确保...

    [MVC]bootstrap-table表格ajax获取json数据并分页

    在本文中,我们将深入探讨如何在ASP.NET MVC框架下,利用bootstrap-table插件通过AJAX方式获取JSON数据并实现分页功能。Bootstrap Table是一个轻量级、强大的前端组件,它提供了一种美观的方式来展示和操作表格数据...

    bootstrap-table后端分页功能完整实例

    使用bootstrap-table实现后台分页 插件资源点击此处本站下载。 引用以下css <link rel="stylesheet" href="../plugins/bootstrap/css/bootstrap.min.css" rel="external nofollow" > <link rel=...

    bootstrap-table实现 行拖拽 插件jquery.tablednd.js bootstrap-table-reorder-rows.js

    bootstrap-table实现 行拖拽 插件 jquery.tablednd.js bootstrap-table-reorder-rows.js bootstrap-table-reorder-rows.css

    BootStrap-table.js 官网下载

    Bootstrap-table.js 是一个基于Bootstrap框架的前端数据展示插件,它允许用户在网页上创建功能丰富的、可操作的表格。这个插件的核心理念是提供一个简单而强大的方式来展示动态数据,同时保持良好的用户体验和响应式...

    将bootstrap-table表格翻译为中文

    Bootstrap表格是前端开发中常用的组件,它为网页提供了一...在未来,如果计划介绍Bootstrap-table的简单使用,可以涵盖表格的初始化、数据加载、列定义、操作列、事件处理等方面,这些都是构建交互式表格的关键知识点。

    bootstrap-table-pagejump.zip

    在数据量较大时,分页功能是必不可少的,而`bootstrap-table-pagejump`插件则扩展了Bootstrap Table,允许用户直接跳转到指定的页面,提高了数据浏览的效率。本篇文章将详细介绍`bootstrap-table-pagejump`的原理、...

    bootstrap-table-export.js bootstrap-table表格导出js

    bootstrap-table-export.js bootstrap-table表格导出js

    bootstrap-table-fixed-columns(css,js)

    这个项目的扩展`bootstrap-table-fixed-columns`专注于解决在大表格中固定首列或首行的问题,使得在滚动时这些重要列始终保持可见,提高用户在浏览长表格时的可读性和交互性。在网页设计中,尤其是在数据密集型应用...

    bootstrap-table-fixed-columns-v1.0.2.zip

    最近需要对表头进行冻结,找到了bootstrap-table-fixed-columns组件(也是bootstrap-table作者写的)能实现冻结效果,但带来了其他问题,包括:排序失效、列宽错位、合并行无效等,于是引入该组件的同时,顺便解决了...

    bootstrap-table-fixed-columns冻结列,并完善排序、列宽和合并行

    Bootstrap Table 是一个流行的...总的来说,这个修复版的 `bootstrap-table-fixed-columns` 插件提高了Bootstrap Table的可用性和功能性,使得在复杂的数据展示场景下,用户能够更加便捷、高效地浏览和操作表格数据。

    bootstrap-table-editable.js

    在 Bootstrap Table 中,`bootstrap-table-editable.js` 是一个非常重要的组件,它为表格提供了行内编辑的功能,极大地提升了用户体验。通过集成 x-editable 库,用户可以直接在表格中修改单元格内容,而无需跳转到...

    bootstrap-table-fixed-columns.zip

    总的来说,`bootstrap-table-fixed-columns` 插件是 FastAdmin 中增强表格用户体验的重要工具,通过合理集成和配置,可以让后台管理系统在处理大数据量时保持良好的可读性和操作性。同时,理解其工作原理和使用方法...

    基于bootstrap-table 实现 右侧列固定

    基于bootstrap-table 实现 右侧列固定,也可以针对左侧列固定,针对操作列使用起来非常方便,引用jquery、bootstrap-table-fixed 样式和js文件后,可以随意设置,灵活。 fixedColumns: true,//fixedtNumber:2, //...

    bootstrap-table-export.js和tableExport.js

    而“bootstrap-table-export.js”和“tableExport.js”是针对Bootstrap表格的导出插件,它们扩展了表格的功能,允许用户将表格数据导出为各种格式,如CSV、Excel、PDF等,便于数据分析和存储。 首先,我们来详细...

    bootstrap-table.js

    在标题"bootstrap-table.js"中,我们可以看出它主要包含两个核心文件:`bootstrap-table.js` 和 `bootstrap-table.css`。 `bootstrap-table.js` 是JavaScript文件,它是Bootstrap Table的功能实现部分。这个文件...

    bootstrap-table-zh-CN.js

    bootstrap-table-zh-CN.js,有需要就下载吧

    Bootstrap-table分页+汇总统计

    在本场景中,“Bootstrap-table 分页 + 汇总统计”意味着我们将探讨如何利用 Bootstrap-table 实现表格的数据分页以及对数据进行总计和统计。 首先,为了实现分页,我们需要在 HTML 中设置表格的基本结构,并在 ...

    bootstrap-table-fixed-columns.js

    在Bootstrap Table中,`bootstrap-table-fixed-columns.js` 插件实现了这一功能。使用这个插件,你可以设置表格的哪一列或几列应该固定在屏幕的一侧,即使在用户滚动页面时,这些列也会保持在可视区域内。这在处理...

Global site tag (gtag.js) - Google Analytics