jQuery EasyUI,ComboBox(下拉列表框)组件,可以远程加载数据的下拉列表组件

学习要点:

  1.加载方式

  2.属性列表

  3.事件列表

  4.方法列表

本节课重点了解 EasyUI 中 ComboBox(下拉列表框)组件的使用方法,这个组件依赖于 Combo(自定义下拉框)组件。

一.加载方式

class 加载方式

  1. <select id="box" class="easyui-combobox" name="box" style="width:200px;">
  2. <option value="aaaa">aaaa</option>
  3. <option value="bbbb">bbbb</option>
  4. <option value="cccc">cccc</option>
  5. <option value="dddd">dddd</option>
  6. <option value="eeee">eeee</option>
  7. </select>

JS 加载方式

  1. <input id="box" name="user">

js代码

combobox()将一个input元素执行,(下拉列表框)组件

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id',
  4. textField: 'user',
  5. url: 'content.json',
  6. });
  7. });

二.属性列表

远程content.json

  1. [
  2. {
  3. "user" : "蜡笔小新",
  4. "email" : "xiaoxin@163.com",
  5. "date" : "2014-10-1",
  6. "id":"1",
  7. "xb":"男"
  8. },
  9. {
  10. "user" : "樱桃小丸子",
  11. "email" : "xiaowanzi@163.com",
  12. "date" : "2014-10-2",
  13. "id":"2",
  14. "xb":"女"
  15. },
  16. {
  17. "user" : "黑崎一护",
  18. "email" : "yihu@163.com",
  19. "date" : "2014-10-3",
  20. "id":"3",
  21. "xb":"男"
  22. },
  23. {
  24. "user" : "黑崎2护",
  25. "email" : "yihu@163.com",
  26. "date" : "2014-10-3",
  27. "id":"4",
  28. "xb":"女"
  29. },
  30. {
  31. "user" : "黑崎3护",
  32. "email" : "yihu@163.com",
  33. "date" : "2014-10-3",
  34. "id":"5",
  35. "xb":"男"
  36. },
  37. {
  38. "user" : "黑崎4护",
  39. "email" : "yihu@163.com",
  40. "date" : "2014-10-3",
  41. "id":"6",
  42. "xb":"女"
  43. },
  44. {
  45. "user" : "黑崎5护",
  46. "email" : "yihu@163.com",
  47. "date" : "2014-10-3",
  48. "id":"7"
  49. ,"xb":"男"
  50. }
  51.  
  52. ]

valueField   string 基础数据值名称绑定到该下拉列表框。默认为 value。设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. });
  7. });

textField   string 基础数据字段名称绑定到该下拉列表框。默认值 text。设置下拉框的text值,如果是远程数据设置数据库指定的字段为text

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. });
  7. });

groupField   string 指定分组的字段名称。默认值 null。通过数据库一个字段来分组如通过性别字段分组

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. groupField:'xb' //通过数据库一个字段来分组如通过性别字段分组
  7. });
  8. });

groupFormatter   function(group)返回格式化后的分组标题文本,以显示分组项

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. groupField:'xb', //通过数据库一个字段来分组如通过性别字段分组
  7. groupFormatter:function (group) { //返回格式化后的分组标题文本,以显示分组项
  8. return '('+group+')';
  9. }
  10. });
  11. });

mode   string定义了当文本改变时如何读取列表数据。设置为'remote'时,下拉列表框将会从服务器加载数据。当设置为“remote”模式时,用户输入将被发送到名为'q'的 HTTP 请求参数到服务器检索新数据。

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. groupField:'xb', //通过数据库一个字段来分组如通过性别字段分组
  7. groupFormatter:function (group) { //返回格式化后的分组标题文本,以显示分组项
  8. return '('+group+')';
  9. },
  10. mode:'remote' //向服务器传递输入值来索引
  11. });
  12. });

url   string 通过 URL 加载远程列表数据。

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. });
  7. });

method   string HTTP 方法检索数据(POST / GET)。设置远程提交方式

data   array 数据列表加载。本地化获取数据

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. // url: 'content.json', //URL 加载远程列表数据
  6. groupField:'xb', //通过数据库一个字段来分组如通过性别字段分组
  7. groupFormatter:function (group) { //返回格式化后的分组标题文本,以显示分组项
  8. return '('+group+')';
  9. },
  10. mode: 'remote', //向服务器传递输入值来索引
  11. data: [
  12. {
  13. "user": "蜡笔小新",
  14. "email": "xiaoxin@163.com",
  15. "date": "2014-10-1",
  16. "id": "1",
  17. "xb": "男"
  18. },
  19. {
  20. "user": "樱桃小丸子",
  21. "email": "xiaowanzi@163.com",
  22. "date": "2014-10-2",
  23. "id": "2",
  24. "xb": "女"
  25. }
  26. ]
  27. });
  28. });

filter   function定义当'mode'设置为'local'时如何过滤本地数据,函数有 2 个参数:q:用户输入的文本。row:列表行数据。返回 true 的时候允许行显示。过滤查找,mode不设置的情况下使用

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. groupField: 'xb', //通过数据库一个字段来分组如通过性别字段分组
  7. groupFormatter: function (group) { //返回格式化后的分组标题文本,以显示分组项
  8. return '(' + group + ')';
  9. },
  10. filter: function (q, row) {
  11. var opts = $(this).combobox('options');
  12. return row[opts.textField].indexOf(q) >= 0;
  13. },
  14. });
  15. });

formatter   function 定义如何渲染行。该函数接受 1 个参数:row。格式化下拉选项

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. groupField: 'xb', //通过数据库一个字段来分组如通过性别字段分组
  7. groupFormatter: function (group) { //返回格式化后的分组标题文本,以显示分组项
  8. return '(' + group + ')';
  9. },
  10. formatter: function (row) { //格式化下拉选项
  11. var opts = $(this).combobox('options');
  12. return '[' + row[opts.textField] + ']';
  13. }
  14. });
  15. });

loader   function(param,success,error)定义了如何从远程服务器加载数据。返回false 可以忽略该动作。该函数具备如下参数:param:传递到远程服务器的参数对象。success(data):在检索数据成功的时候调用该回调函数。error():在检索数据失败的时候调用该回调函数。

loadFilter function(data) 返回过滤后的数据并显示。

三.事件列表

onBeforeLoad   param在请求加载数据之前触发,返回 false 取消该加载动作。

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. // groupField: 'xb', //通过数据库一个字段来分组如通过性别字段分组
  7. onBeforeLoad:function () { //在请求加载数据之前触发,返回 false 取消该加载动作。
  8. alert('在请求加载数据之前触发');
  9. }
  10. });
  11. });

onLoadSuccess   none 在加载远程数据成功的时候触发。

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. // groupField: 'xb', //通过数据库一个字段来分组如通过性别字段分组
  7. onLoadSuccess:function () { //在加载远程数据成功的时候触发
  8. alert('在加载远程数据成功的时候触发');
  9. }
  10. });
  11. });

onLoadError   none 在加载远程数据失败的时候触发。

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content2.json', //URL 加载远程列表数据
  6. // groupField: 'xb', //通过数据库一个字段来分组如通过性别字段分组
  7. onLoadError:function () { //在加载远程数据失败的时候触发
  8. alert('在加载远程数据失败的时候触发');
  9. }
  10. });
  11. });

onSelect   record 在用户选择列表项的时候触发。

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. // groupField: 'xb', //通过数据库一个字段来分组如通过性别字段分组
  7. onSelect:function () { //在用户选择列表项的时候触发
  8. alert('在用户选择列表项的时候触发');
  9. }
  10. });
  11. });

onUnselect   record 在用户取消选择列表项的时候触发。

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. // groupField: 'xb', //通过数据库一个字段来分组如通过性别字段分组
  7. onUnselect:function () { //在用户取消选择列表项的时候触发
  8. alert('在用户取消选择列表项的时候触发');
  9. }
  10. });
  11.  
  12. $('#ann').click(abc); //点击按钮后
  13. function abc() {
  14. $('#box').combobox('unselect', 1); //取消选择列表
  15. }
  16.  
  17. });

三.方法列表

options   none 返回属性对象。

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. });
  7. var shux = $('#box').combobox('options'); //返回属性对象
  8. $.each(shux, function (attr, value) { //遍历 JavaScript 原生态的对象数组
  9. alert(attr + ':' + value);
  10. });
  11. });

getData   none 返回加载数据。

loadData   data 读取本地列表数据。

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. // url: 'content.json', //URL 加载远程列表数据
  6. });
  7.  
  8. $('#box').combobox('loadData',[{ //读取本地列表数据。
  9. "user" : "蜡笔小新",
  10. "email" : "xiaoxin@163.com",
  11. "date" : "2014-10-1",
  12. "id":"1",
  13. "xb":"男"
  14. }]);
  15.  
  16. });

reload   url 请求远程列表数据。通过'url'参数重写原始URL 值。

setValues   values 设置下拉列表框值数组。设置下拉列表框values值,数组方式也就是设置多个值

setValue   value 设置下拉列表框的值。 

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. });
  7.  
  8. $('#box').combobox('setValue','555'); //设置下拉列表框的值
  9.  
  10. });

clear   none 清除下拉列表框的值。

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. });
  7.  
  8. $('#box').combobox('clear'); //清除下拉列表框的值
  9.  
  10. });

select   value 选择指定项。

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. });
  7.  
  8. $('#box').combobox('select',2); //选择指定项
  9.  
  10. });

unselect   value 取消选择指定项。

  1. $(function () {
  2. $('#box').combobox({
  3. valueField: 'id', //设置下拉框的value值,如果是远程数据设置数据库指定的字段为value值
  4. textField: 'user', //设置下拉框的text值,如果是远程数据设置数据库指定的字段为text值
  5. url: 'content.json', //URL 加载远程列表数据
  6. // groupField: 'xb', //通过数据库一个字段来分组如通过性别字段分组
  7. onUnselect:function () { //在用户取消选择列表项的时候触发
  8. alert('在用户取消选择列表项的时候触发');
  9. }
  10. });
  11.  
  12. $('#ann').click(abc); //点击按钮后
  13. function abc() {
  14. $('#box').combobox('unselect', 1); //取消选择列表
  15. }
  16.  
  17. });

第二百二十三节,jQuery EasyUI,ComboBox(下拉列表框)组件的更多相关文章

  1. 第二百二十二节,jQuery EasyUI,DataGrid(数据表格)组件

    jQuery EasyUI,DataGrid(数据表格)组件 学习要点: 1.加载方式 2.分页功能 本节课重点了解 EasyUI 中 DataGrid(数据表格)组件的使用方法,这个组件依赖于 Pa ...

  2. 第三百二十三节,web爬虫,scrapy模块以及相关依赖模块安装

    第三百二十三节,web爬虫,scrapy模块以及相关依赖模块安装 当前环境python3.5 ,windows10系统 Linux系统安装 在线安装,会自动安装scrapy模块以及相关依赖模块 pip ...

  3. 第二百二十六节,jQuery EasyUI,Tree(树)组件

    jQuery EasyUI,Tree(树)组件 本节课重点了解 EasyUI 中 Tree(树)组件的使用方法,这个组件依赖于 Draggable(拖 动)和 Droppable(放置)组件. 一.加 ...

  4. 第二百二十九节,jQuery EasyUI,后台管理界面---后台登录

    jQuery EasyUI,后台管理界面---后台登录 登录原理图 一,login.php,登录界面 <!DOCTYPE html> <html> <head> & ...

  5. 第二百二十八节,jQuery EasyUI,TreeGrid(树形表格)组件

    jQuery EasyUI,TreeGrid(树形表格)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 TreeGrid(树形表格)组件的使 ...

  6. 第二百二十五节,jQuery EasyUI,PropertyGird(属性表格)组件

    jQuery EasyUI,PropertyGird(属性表格)组件 学习要点: 1.加载方式 2.属性列表 3.方法列表 本节课重点了解 EasyUI 中 PropertyGird(属性表格)组件的 ...

  7. 第二百二十四节,jQuery EasyUI,ComboGrid(数据表格下拉框)组件

    jQuery EasyUI,ComboGrid(数据表格下拉框)组件 学习要点: 1.加载方式 2.属性列表 3.方法列表 本节课重点了解 EasyUI 中 ComboGrid(数据表格下拉框)组件的 ...

  8. 第二百二十节,jQuery EasyUI,Slider(滑动条)组件

    jQuery EasyUI,Slider(滑动条)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 Slider(滑动条)组件的使用方法,这个 ...

  9. 第二百零八节,jQuery EasyUI,SplitButton(分割按钮菜单)组件

    jQuery EasyUI,SplitButton(分割按钮)组件 学习要点: 1.加载方式 2.属性列表 3.方法列表 本节课重点了解 EasyUI 中 SplitButton(分割按钮)组件的使用 ...

随机推荐

  1. MPlayer源代码分析

    http://blog.csdn.net/leixiaohua1020/article/details/11885509 一.Mplayer支持的格式 MPlayer是一个LINUX下的视频播放器,它 ...

  2. 安装kubernetes dashboard

    一.kubernetes dashboard kubernetes dashboard是k8s的web管理界面 二.安装 k8s的版本为1.5 1.创建dashboard-controller.yam ...

  3. STL源代码剖析 容器 stl_map.h

    本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie map ------------------------------------------ ...

  4. 2019pycharm破解大法

    通过激活码激活Pycharm 1 先找到你的hosts文件: Windows电脑:c:\windows\system32\drivers\etc Linux/Mac电脑:/etc 2 编辑hosts文 ...

  5. vue1.0 的过滤器

    vue1.0  自带的过滤器: 一 .过滤器写法 {{ message | Filter}} 二. Vue自带的过滤器:capitalize 功能:首字母大写 <!DOCTYPE html> ...

  6. 关于comet

    Comet是彗星的意思,这一技术之所以借用这个名字,是因为这里的每一次请求都有一个长长的“尾巴”.这个长尾巴就是我们感兴趣的长连接. 因为长连接的实现,Comet可以不需要安装浏览器插件就可以向客户端 ...

  7. RMQ 算法入门

    1. 概述 RMQ(Range Minimum/Maximum Query).即区间最值查询,是指这样一个问题:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j<=n),返回数列A ...

  8. Android源码-SignApk.java

    /* * Copyright (C) 2008 The Android Open Source Project * * Licensed under the Apache License, Versi ...

  9. C++11: reference_wrapper

    https://oopscenities.net/2012/08/09/reference_wrapper/ Look at this piece of code: 1 2 3 4 5 6 7 8 9 ...

  10. github创建maven项目过程

    笔者运行环境: 1. windows 10 2. cygwin,安装openssh 3. git版本 2.11.0 前置操作,如果已经配置可以略过 1.  cygwin下执行 ssh-keygen - ...