`
simen_net
  • 浏览: 300168 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

文本输入框增加单位名称的方法-2010-1-13修正

阅读更多

先上效果,已在Firefox3.5、IE7、Chrome3中测试正常

完整应用和代码请转到 http://www.iteye.com/topic/553020


想达到这个效果,可惜ExtJS本身不支持,那么我们就来扩展吧

 

// 重写Ext.form.TextField的onRender方法以支持文本框后输入单位名称
Ext.override(Ext.form.TextField, {
      unitText : '',
      onRender : function(ct, position) {
        Ext.form.TextField.superclass.onRender.call(this, ct, position);
        // 如果单位字符串已定义 则在后方增加单位对象
        if (this.unitText != '') {
          this.unitEl = ct.createChild({
                tag : 'font',
                html : this.unitText
              });
          this.unitEl.addClass('x-form-unit');
          // 如果当前width存在(当定义为自动宽度或百分比时width不存在)则增加单位名称的同时 按单位名称大小减少文本框的长度
          if (typeof(this.width) != 'undefined' && this.width > 0) {
            this.width = this.width - (this.unitText.replace(/[^\x00-\xff]/g, "xx").length * 6 + 2);
          }
          // 同时修改错误提示图标的位置
          this.alignErrorIcon = function() {
            this.errorIcon.alignTo(this.unitEl, 'tl-tr', [2, 0]);
          };
        }
      }
    })

 同时要在css文件中增加

.x-form-unit {
	height: 22px;
	line-height: 22px;
	padding-left: 2px;
	display: inline-block;
	display: inline;
}

.x-form-field-wrap {
	float: left;
}

 这里要说明一下:IE的BUG,如果只有

display: inline-block;

 可惜只能在Firefox和Chrome浏览器,IE里面就成这样了



 所以必须是

	display: inline-block;
	display: inline;

 

注意事项:在实际使用中发现ExtJS中还有一些其他控件是继承了textfield,例如combo,目前使用的情况是在combo中能正常显示单位,其他的控件就没有一一测试。

 

combo的效果如下


  • 大小: 3 KB
  • 大小: 3.5 KB
  • 大小: 3.9 KB
分享到:
评论
3 楼 253405050 2010-12-21  
扩展一下挺不错的,用column 的话感觉代码写的比较繁杂。
2 楼 fireinjava 2009-12-25  
嘿嘿,我的办法估计是用column 比例 设置的刚刚好 ,凑合下
1 楼 ninggy 2009-12-22  
学习了,

相关推荐

    易语言程序免安装版下载

    修改文本语音转换支持库,增加“机读文本.重新创建并初始化()”方法。 8. 修改应用接口支持库,增强“取快捷方式目标”命令功能,可以获取目标、参数、启始位置、图标、运行方式、快捷键、备注等信息。 9. 修改...

    EditPlus 3.31 Build 1129

    * 修正:当另存为时,在文件名称输入框的鼠标右键菜单问题 [0501] (完美解决方案,真正中文,不会再调出来韩文了。感谢 D4llower 等多位网友协力帮助) * 修正:在 64 位系统下,无法设置系统右键快捷菜单关联 ...

    EditPlus 3.31 Build 860 简体中文版

    * 修正:当另存为时,在文件名称输入框的鼠标右键菜单问题 [0501] (完美解决方案,真正中文,不会再调出来韩文了。感谢 D4llower 等多位网友协力帮助) * 修正:在 64 位系统下,无法设置系统右键快捷菜单关联 ...

    X-Scan v3.1

    “从文件中获取主机列表” - 选中该复选框将从文件中读取待检测主机地址,文件格式应为纯文本,每一行可包含独立IP或域名,也可包含以“-”和“,”分隔的IP范围。 “报告文件” - 扫描结束后生成的报告文件名,...

    X-Scan

    “从文件中获取主机列表” - 选中该复选框将从文件中读取待检测主机地址,文件格式应为纯文本,每一行可包含独立IP或域名,也可包含以“-”和“,”分隔的IP范围。 “报告文件” - 扫描结束后生成的报告...

    EditPlus_3.40.683 中文版

    * 修正:当另存为时,在文件名称输入框的鼠标右键菜单问题 [0501] (完美解决方案,真正中文,不会再调出来韩文了。感谢 D4llower 等多位网友协力帮助) * 修正:在 64 位系统下,无法设置系统右键快捷菜单关联 ...

    EditPlus_3.41.1145最新绿色破解版

     * 修正:当另存为时,在文件名称输入框的鼠标右键菜单问题 [0501]  (完美解决方案,真正中文,不会再调出来韩文了。感谢 D4llower 等多位网友协力帮助)  * 修正:在 64 位系统下,无法设置系统右键快捷菜单关联 ...

    中通2008—2012通信概预算编制系统_v4.0.6_Winxp_setup.

    当鼠标移动到一些按键、文本输入框上,也会出现操作说明。 b)工程设置:选择工程类型后,费率自动生成。调遣费人数由系统计算表2后自动设定。调遣距离需要输入。 c)系数调整:表3甲中,选中<系数调整>键,点中待调整...

    中通2008—2012通信概预算编制系统_v4.1.0_Winxp_setup

    当鼠标移动到一些按键、文本输入框上,也会出现操作说明。 b)工程设置:选择工程类型后,费率自动生成。调遣费人数由系统计算表2后自动设定。调遣距离需要输入。 c)系数调整:表3甲中,选中<系数调整>键,点中待调整...

    TrueCrypt的国内延伸版本CnCrypt V1.11(单一文件绿色版)

    对界面文本输入框Edit变成居下显示 安装时如果有卷已经加载,可以进行重试检测 增加了Windows用户锁定时自动卸载卷的选项 双击打开扩展名.ccx文件会直接弹出加载对话框 修改FitPathInGfxWidth函数,无法对长文件名...

    中通2008通信概预算编制系统v3.4.10_WinXp版_setup

    当鼠标移动到一些按键、文本输入框上,也会出现操作说明。 b)工程设置:选择工程类型后,费率自动生成。调遣费人数由系统计算表2后自动设定。调遣距离需要输入。 c)系数调整:表3甲中,选中<系数调整>键,点中待调整...

    中通2008通信概预算编制系统v3.4.10_WinXp版_setup.zip

    当鼠标移动到一些按键、文本输入框上,也会出现操作说明。 b)工程设置:选择工程类型后,费率自动生成。调遣费人数由系统计算表2后自动设定。调遣距离需要输入。 c)系数调整:表3甲中,选中<系数调整>键,点中待调整...

    糖果浏览器2.08绿色解压版

    13 修正网页列表按钮bug 14 在标签上右击可以把网页加入黑名单, 之后该网页将不能再弹出(对付顽固的弹出网页); 15 在标签上右击可以把网页加入白名单, 这样本站就可以正常弹出窗口; 16 阻止弹出窗口增强,例如...

    TrueCrypt的国内延伸版本CnCrypt1.0

    对界面文本输入框Edit变成居下显示 安装时如果有卷已经加载,可以进行重试检测 增加了Windows用户锁定时自动卸载卷的选项 双击打开扩展名.ccx文件会直接弹出加载对话框 修改FitPathInGfxWidth函数,无法对长文件名...

    MAPGIS地质制图工具

    最低标高默认为-1,表示由软件自动计算最低标高。也自己看情况调整。 4、点确定后,就可以拉直线了,点鼠标左键,不要松开鼠标左键,移到你要的地方后(可用滚轮放大缩小),松开鼠标左键。会弹出存储数据成功...

    中通2008通信概预算编制系统v3.5.5_WinXp版_setup

    当鼠标移动到一些按键、文本输入框上,也会出现操作说明。 b)工程设置:选择工程类型后,费率自动生成。调遣费人数由系统计算表2后自动设定。调遣距离需要输入。 c)系数调整:表3甲中,选中<系数调整>键,点中待调整...

    中通2008通信概预算编制系统v3.6.0_WinXp版

    当鼠标移动到一些按键、文本输入框上,也会出现操作说明。 b)工程设置:选择工程类型后,费率自动生成。调遣费人数由系统计算表2后自动设定。调遣距离需要输入。 c)系数调整:表3甲中,选中<系数调整>键,点中待调整...

Global site tag (gtag.js) - Google Analytics