写在前面

和队友完成工程实践项目过程中遇到combobox数据项加载失败的问题,我将记录下解决该问题中不断填坑的过程。

这是可以确定的填写正确的combobox内容

action也没有错误,Struts配置也正常,但接收不到数据。后经排查,找到了问题所在。

即第一个要点,combobox接收参数的json数据格式:

[{"id":value,"name":value...},{},{},{}...]

这是JSONArray的格式,此处直接使用id,name等属性名可直接访问,并按照数组顺序依次自动填充

如果是使用Struts-json自动转换的方式,则需要action中将相应实体类对象放到list中,然后在result中使用json包中相应的方法完成。下面有示例:

获取这样的json格式即可,为方便展示,删减了字段和记录。

小技巧:因为json是Struts-json包自动转的,为了知道具体的值,可以使用方法:JSONArray.fromObject(list)

写到这里,因为图方便,我的list是在方法中直接声明的,于是combobox一直接收不到数据,也没有任何报错,combobox的执行成功和失败函数均无反应。此处发现第二个知识点

即当前台接收不到json数据,控制台又没有任何错误提示时,考虑Struts中转json的数据源是否被识别,如上图Struts配置中的jsonList。

所有经过Struts的数据传递,都必须要设置set、get方法。在配置文件中获取数据也是如此,由于我在方法内部直接声明的list,导致配置文件数据获取失败,无法传递json到前台,同时也不会报错!!!

在填坑过程中,深入理解了combobox的使用,以及easyUI相关组件的使用

最大的感受是:请多查看官方文档!!!请多查看官方文档!!!请多查看官方文档!!!

先贴上直通车链接:http://www.jeasyui.net/plugins/169.html

同时,我发现所有组件都是一样的使用方式。

当组件没有销毁时,用id的方式可以直接获取到    $('#id').combobox({url:value,valueField:value,textField:value,..});      --------其他组件则对应改名即可 如$('#id').form();

括号中可填写对应参数,或对应方法,有多个时用逗号隔开即可。同时,若重复设置参数,则已设置过的参数的属性值覆盖,未设置过的参数属性值更新。

相关属性,事件,方法的使用

属性直接赋值即可,事件就写上  事件名:function(){} 对应参数要和官方要求的一致,方法需要单独引用$('#id').combobox('方法名','参数');

例:

$("#cc").combobox({
url:'category_query.action', //数据请求
valueField:'id', //选项的value
textField:'type', //选项的显示值
panelHeight:'auto', //自适应高度
panelWidth:120,//下拉列表是两个组件组成的
width:120, //要同时设置两个宽度才行
editable:false, //下拉框不允许编辑
//combobox继承combo继承validatebox,所以可以直接在这里设置验证
required:true,
missingMessage:'请选择所属类别',

onLoadSuccess:function(){

// 加载成功时处理,事件的范例在此演示

var data = $('#cc').combobox('getData'); //此事件获取从后台加载的json数据

alert(JSON.stringify(data));  //转字符串并显示

$('#cc').combobox('select','1'); //此事件设置下拉列表默认值为第一项

}, // 此方法没有参数

onBeforeLoad:function(param){

}// param用于指定加载参数
});

转载于:https://www.cnblogs.com/baichangfu/p/7030646.html

combobox数据获取及使用总结相关推荐

  1. FTL页面常用到的一些方法combobox、combotree、datagrid

    参考文件:点击下载 1.combobox: (1).js 1)初始化combobox //相似度 $('#same').combobox({//url:"<@s.url value=& ...

  2. 关于WPF的ComboBox中Items太多而导致加载过慢的问题

                                         [WFP疑难]关于WPF的ComboBox中Items太多而导致加载过慢的问题                         ...

  3. Easyui combobox下拉框默认选中第一项

    var val = $(#cc).combobox("getData"); for (var item in val[0]) {        if (item == " ...

  4. silverlight之How To:设置ComboBox控件的数据源当ComboBox用来作为DataGrid的某列的编辑控件时...

    DataGrid是个可编辑的列表控件,而且可以用已有的输入控件来作为某一列的编辑控件,比如用ComboBox控件来作为某列的编辑控件供用户选择数据,这个时候就要先设置好ComboBox控件的下拉列表项 ...

  5. 怎么获得combobox的valueField值

    var a;        var dwField = new Ext.form.ComboBox({              fieldLabel:'管理员',                   ...

  6. ASP.NET Aries JSAPI 文档说明:AR.Form、AR.Combobox

    AR.Form 文档 1:对象或属性: 名称 类型 说明 data 属性 编辑页根据主键请求回来的数据 method 属性 用于获取数据的函数指向,默认值Get objName 属性 用于拦截form ...

  7. easyui的combobox下拉框初始化默认值以及保持该值一直显示的方法

    easyui的combobox下拉框默认初始值是空,下面是实现从远程加载数据之后初始化默认值,以及让该值一直排在下拉框的最顶部的方式. 目前的需求是需要在初始化的时候添加"全部数据库&quo ...

  8. 41款实用工具,数据获取、清洗、建模、可视化都有了

    诸如结构式访谈.非结构式访谈.开放式问卷调查.封闭式问卷调查.记录评论和观察等技术统称为事实调查方法.这种事实调查方法和其他数据获取方法可以采取自动化,而不必使用人工方法. 使用具有专用软件的物理设备 ...

  9. 基于HTTP协议的几种实时数据获取技术

    HTTP协议 HTTP协议大家都很熟悉了,开始本文之前,首先简单回顾一下HTTP协议. HTTP协议是建立在TCP协议上的应用层协议,协议的本质是请求----应答: 即对于HTTP协议来说,服务端给一 ...

最新文章

  1. 棋盘格检测--Automatic camera and range sensor calibration using a single shot
  2. 在ubuntu下安显卡驱动
  3. MVC开发中的常见错误-06-无法在发送 HTTP 标头之后进行重定向。
  4. Oracle 客户端 使用 expdp/impdp 示例 说明
  5. [Python爬虫] Selenium+Phantomjs动态获取CSDN下载资源信息和评论
  6. php使用ftp远程上传文件类(解决主从文件同步问题的简单方法)
  7. php面试 算法,PHP面试之常用算法 - 简庆旺个人博客|PHP教程|PHP学习|Python学习|Python教程|Seo学习|Seo教程...
  8. 【工具使用系列】关于 MATLAB Embedded Coder, 你需要知道的事
  9. 安装完python怎么打开-安装python后如何通过Python打开网页
  10. nginx 配置虚拟机实例
  11. 浅谈5类过零检测电路
  12. 清华大学计算机杜瑜皓,立足改革、多元择优为清华选拔有理想有才能的优秀学子-清华大学新闻网...
  13. hilbert方程组matlab,数值分析(Hilbert矩阵)病态线性方程组的求解Matlab程序
  14. 网络共享计算机无法登录,局域网共享文件夹访问无法出现用户登陆窗口怎么办?...
  15. JS安全域名验证,安全域名效验,安全域名检查,正则表达式RegExp检查域名,截取字符串检查域名,检查域名url前缀的域名部分是否包含指定域名
  16. php在线考试系统 附源码(一)
  17. ArcGIS-创建企业级数据库相关问题
  18. 我给同事配的实用型的家庭多媒体影院系统 -- 3.音响选择篇
  19. 上海二本计算机学校有哪些,上海有哪些二本大学 附所有二本大学名单
  20. waf帮助构建及编译系统

热门文章

  1. USACO / Stamps(DP)
  2. .net中6个重要的基础概念:Stack, heap, Value types, reference types, boxing and Unboxing.
  3. 如何从开发人员走向架构师
  4. tushare 金融数据获取(R语言版)
  5. 计算机学院 拔河比赛加油词,运动会拔河比赛加油词
  6. python方法调用名字不一样_python中调用父类同名方法
  7. vue搜不到c_vue不是内部命令、安装@vue/cli失败、找不到vue.cmd文件等问题的解决方法...
  8. linux 脚本 变量为空,Shell脚本中判断输入变量或者参数是否为空的方法
  9. java实现逐帧图片_java – 如何逐帧读取视频?
  10. 导出txt文件宏_利用solidwords二次开发导出三维曲面方阵点坐标方法