`
yangming103
  • 浏览: 8777 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Ext Combobox

    博客分类:
  • Ext
阅读更多
Ext.ns("Dma.common");
Dma.common.DmaCommon = Ext.extend(Ext.form.ComboBox, {
	check : true,
	displayValue : false,
	displayAll:true,
	valueText : [],
	displayText : [],
	separator : ',',
	hiddenValue : '',
	flag : 0,
	selectAllTxt : 'SELECT ALL',
	hasSelectAll : false,
	
	initComponent : function() {
		if (this.check) {
			this.tpl = ''
					+ '<tpl for=".">'
					+ '<div  class="x-combo-list-item">'
					+ '<input class="x-form-check-wrap" style="border:none;background:none;" type="checkbox" name="combox" {[values.'
					+ this.checkField + '?"checked":""' + ']}/>{'
					+ this.displayField + '}</div></tpl>';
		} else {
			this.tpl = '<tpl for="."><div class="x-combo-list-item">{'
					+ this.displayField + '}</div></tpl>';
		}

		Dma.common.DmaCommon.superclass.initComponent.apply(this, arguments);
		this.onLoad = this.onLoad.createSequence(function() {
					if (this.el) {
						var v = this.el.dom.value;
						this.el.dom.value = '';
						this.el.dom.value = v;
					}
				});
	},
getCheckValue : function() {
		if (this.check) {
			var rst = [];
			var snapshot = this.store.snapshot || this.store.data;
			var f = false;
			snapshot.each(function(r) {
						if (r.get(this.checkField)) {
							if (r.get(this.displayField) != this.selectAllTxt) {
								rst.push(r.get(this.valueField));
							}
						} else if(r.get(this.displayField) != this.selectAllTxt){
							f = true;
						} 
					}, this);
			if(f)
				this.hasSelectAll = false;
			else
				this.hasSelectAll = true;
			var temp = rst.join(this.separator);
			this.hiddenValue = temp;
			return temp;
		} else {
			this.hiddenValue = this.getValue();
			return this.hiddenValue;
		}
	},
	getCheckDisplay : function() {
		if (this.check) {
			var rst = [];
			var val = [];
			var snapshot = this.store.snapshot || this.store.data;
			var f = false;
			snapshot.each(function(r) {
						if (r.get(this.checkField)) {
							if (r.get(this.displayField) != this.selectAllTxt) {
								rst.push(r.get(this.displayField));
								val.push(r.get(this.valueField));
							}
						} else if(r.get(this.displayField) != this.selectAllTxt){
							f = true;
						} 
					}, this);
			if(f)
				this.hasSelectAll = false;
			else
				this.hasSelectAll = true;
			this.hiddenValue = val.join(this.separator);
			var temp = rst.join(this.separator);
			//this.setRawValue(temp);
			return temp;
		} else {
			this.hiddenValue = this.getValue();
			return this.getValue();
		}
	},
分享到:
评论

相关推荐

    Ext combobox 下拉多选框带搜索功能

    在给定的标题“Ext ComboBox 下拉多选框带搜索功能”中,我们关注的是一个特别的ComboBox实现,它不仅允许用户从下拉列表中选择多个选项,还具备搜索功能,使得用户可以更高效地找到他们想要的选择项。 ComboBox在...

    ext combobox二级联动

    ext,ext combobox,ext二级联动,ext combobox二级联动 ___本人的原则:上传好东西,但绝不便宜.因为自己的心血 ext combobox二级联动,ext ,ext combobox,combobox,combobox二级联动,ext 二级联动 groupCombo.on('...

    Ext ComboboxGrid

    "Ext ComboboxGrid"是一个基于Ext JS框架的组件,它结合了下拉框(ComboBox)和数据网格(Grid)的功能,提供了一种更强大的选择和筛选数据的方式。在Ext JS中,ComboBox通常用于显示一个可选的下拉列表,而Grid则...

    Ext comboBox的remote模式,联想功能实现

    本篇我们将深入探讨“Ext comboBox的remote模式”及其联想功能的实现。 在Ext JS的comboBox中,远程模式(remote mode)是一种数据加载策略,它适用于处理大量数据或实时数据的情况。在这种模式下,comboBox不会一...

    Ext ComBobox 附带完整附件

    Ext ComBobox是一款基于JavaScript库Ext JS开发的下拉组合框组件,它为用户界面提供了一种高效、灵活且功能丰富的选择输入方式。这个组件通常用于在网页应用中实现复杂的数据选择,比如从一个长列表中选取一项或者...

    Ext4.0 动态修改ComboBox选择项(本地模式)

    本知识点主要聚焦于如何在Ext4.0框架下动态修改ComboBox的选择项,特别是在本地模式下进行操作。Ext4.0是Sencha Ext JS的一个版本,它提供了一个强大的JavaScript组件库,用于构建富客户端应用程序。 首先,...

    extjs的ComboBox 2级联动

    var provinceComboBox = Ext.create('Ext.form.ComboBox', { store: provincesStore, displayField: 'name', valueField: 'id', queryMode: 'local', listeners: { select: function(combo, record) { // 在...

    Ext带图标Combobox

    而"Ext带图标Combobox"(Ext IconCombobox)是Ext JS中的一个特色组件,它是Combobox(下拉框)与图标相结合的一种扩展形式,为用户提供了更加直观且美观的交互体验。 **1. Ext Combobox基础** 首先,我们需要了解...

    ext combobox动态加载数据库数据(附前后台)

    在EXT JS中,Combobox控件常用于创建下拉列表,允许用户从预定义的选项中选择一个值。本文将详细讲解如何实现EXT Combobox动态加载数据库数据,并提供前后台的实现方法。 EXT Combobox动态加载数据库数据的核心在于...

    Ext 组合框 ComboBox 参数详解

    该资源是war包,里面包括ComboBox中的各个参数, 详细讲解在我的文档中有

    combobox Ext之扩展组件多选下拉框

    - `store`:用于存储下拉选项的数据源,可以是数组或Ext.data.Store对象。 2. **多选事件处理**: - `select`事件:在多选模式下,当用户添加或移除选项时,这个事件会被触发。我们需要监听此事件来处理值的改变...

    用Ext 2.0 combobox 做的省份和城市联动选择框的例程

    在本文中,我们将深入探讨如何使用Ext 2.0的ComboBox组件实现省份和城市联动选择框的功能。Ext是一个强大的JavaScript库,它提供了丰富的用户界面组件,包括ComboBox,用于创建下拉选择框。在这个例程中,我们将看到...

    ExtJS Combobox二级联动列子

    var provinceComboBox = new Ext.form.ComboBox({ store: provinceStore, displayField: 'name', valueField: 'id', typeAhead: true, queryMode: 'local', listeners: { select: function(combo, record, ...

    Ext组合框comboBox带分页

    用EXT来实现下拉框ComboBox 下拉框可以实现分页

    EXT2_combobox_form.rar_combobox ext_ext

    EXT2_combobox_form.rar_combobox ext_ext 这个标题暗示我们关注的是一个与EXT2相关的项目,其中包含了关于form表单和combobox的示例。EXT是一个流行的JavaScript库,主要用于构建富客户端应用,特别是Web应用的用户...

Global site tag (gtag.js) - Google Analytics