Ext.ns("Ext.ux");
//创建插件对象
Ext.ux.PageSizePlugin = function(){
//调用父对象的构造方法,并为此插件生成一个预定义store的下拉菜单
Ext.ux.PageSizePlugin.superclass.constructor.call(this,{
store : new Ext.data.SimpleStore({
fields : ['text','value'],
data : [['10',10],['20',20],['30',30],['40',40],['50',50]]
}),
mode : 'local' ,
displayField : 'text' ,
valueField : 'value' ,
editable : false ,
allowBlank : false ,
triggerAction : 'all' ,
width : 60
})
}
//插件继承ComboBox
Ext.extend(Ext.ux.PageSizePlugin ,Ext.form.ComboBox ,{
//插件必须调用的方法(或者说插件唯一自动调用的方法)
init : function(paging){//paging是PageSizePlugin插件所在组件的对象(PaggingToolbar)
paging.on('render',this.onInitView,this);//为PaggingToolbar定义渲染之后调用的方法,以及指定该方法的作用域为ComboBox
},
onInitView : function(paging){
paging.add('-',
this ,
'条/页'
);
this.setValue(paging.pageSize);//设置ComboBox的值
this.on('select',this.onPageSizeChanged,paging);//为ComboBox定义选择下拉菜单后调用的方法,以及指定该方法的作用域为PaggingToolbar
},
onPageSizeChanged : function(combo){
this.pageSize = parseInt(combo.getValue());
//compage = parseInt(combo.getValue()); this.doLoad(0);//PaggingToolbar调用私有方法加载数据,参数0为start
}
}) //一点思考:调用父对象的构造方法 完全可以写在init方法的第一行,这样写不容易打断自己的思路,然而这样写会显得比较乱,代码不清晰。
//从代码执行顺序上考虑:插件所在的组件找到这个插件后,会先创建插件对象并继承父对象,然后再调用插件的init方法

ExtJs 下拉菜单分页工具插件 代码分析的更多相关文章

  1. Easyui表单,文本框,下拉菜单三级联动练习代码

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  2. (JavaScript插件——下拉菜单)

    前言 阅读之前您也可以到Bootstrap3.0入门学习系列导航中进行查看http://www.cnblogs.com/aehyok/p/3404867.html 本文主要来学习一下JavaScrip ...

  3. 初学者--bootstrap(六)组件中的下拉菜单----在路上(10)

    组件---下拉菜单 用于显示链接列表的可切换.有上下文的菜单.下拉菜单的 JavaScript 插件让它具有了交互性. 将下拉菜单触发器和下拉菜单都包裹在 .dropdown 里,或者另一个声明了 p ...

  4. Bootstrap3系列:按钮式下拉菜单

    1. 基本实例 把按钮放入 .btn-group 中,加入适当的菜单标签,让按钮触发下拉菜单. 1.1 示例代码 <div class="btn-group"> < ...

  5. [jquery]添加行内容后根据下拉菜单选择内容对比之前已有选项,若有重置再提示

    今天页面上一个添加列内容时,要对选择内容与之前已有选项内容作对比,防止用户重复选择内容 页面HTML代码 <ul class="list-group xj-list-NObor xj- ...

  6. 纯css实现横向下拉菜单

    自己最近在捣腾css代码,不光是js能做很多有趣的东西,这货也可以做很多东西,现在把自己的一些作品分享给大家. 做得有点粗糙,大家根据这个思路来,可以自己修改修改. 关于demo:这是一个横向下拉的菜 ...

  7. 下拉菜单;手风琴;九宫格的Jquery的使用实例

    下拉菜单;手风琴;九宫格的Jquery的使用实例 1.下拉菜单 效果如图: 代码如下: <!DOCTYPE html> <html lang="en"> & ...

  8. zTree插件之多选下拉菜单代码

    zTree插件之多选下拉菜单代码 css和js <!--ztree树结构--> <link rel="stylesheet" type="text/cs ...

  9. Bootstrap 下拉菜单和滚动监听插件

    一.下拉菜单 常规使用中,和组件方法一样,代码如下: //声明式用法 <div class="dropdown"> <button class="btn ...

随机推荐

  1. iOS--跳转到APPstore评分

    本代码适用于iOS7之后的版本: NSString *str = [NSString stringWithFormat:@"itms-apps://itunes.apple.com/app/ ...

  2. codeforces 676D Theseus and labyrinth BFS搜索

    分析:一个n*m的矩阵,每个格子有12个状态,每次按一次,每个格子转90度,所以整个矩阵只有4种状态,然后爆搜就好了 #include <cstdio> #include <iost ...

  3. 浏览器插件 - 通用注入模版JS

    //TIP:先通过Tampermonkey编写为可用脚本,再套用此通用模版,再拖到Chrome安装为扩展即可. /* 通用注入原型3:*/ switch (window.location.pathna ...

  4. 计算N的阶层

    int factorial(int n) { int i, result; ; i <= n; i++) result *= i; return result; } int factorial2 ...

  5. minicom 没有tx 信号

    在minicom -s 的配置中:——> Serial port setup -->  选择F - Hardware Flow Control : No默认是yes, 但是没有tx信号输出 ...

  6. r语言入门资料

    最近有好多r语言的爱好者问我r语言的事情,在百度上简单的收一收,感觉都在扯淡,真正适合初学者入门的资料几乎没有,比如最开始用什么编辑器比较好,在哪下载,最开始学习的例子有什么?  在日本网站上反倒是找 ...

  7. 【转载】grep,egrep,fgrep详解

    [转载自]http://blog.csdn.net/homking/article/details/6000711 egrep 等价于 grep -E fgrep 等价于 grep -F grep - ...

  8. Docker系列(七)Shipyard安装及介绍

    Shipyard 是一个基于 Web 的 Docker 管理工具,支持多 host,可以把多个 Docker host 上的 containers 统一管理:可以查看 images,甚至 build ...

  9. java@ LinkedList 学习

    package abc.com; import java.util.LinkedList; public class TestLinkedList { static void prt(Object o ...

  10. ubuntu 的 apt-get update 出现404错误时,ubuntu 版本也 end of life 了的解决方案

    xmodulo.com/how-to-fix-apt-get-update-error-on-ubuntu.html 如果是依赖没找到,可以用 sudo apt-get install -f 先补齐依 ...