开发扩展的文本框控件
来源:互联网 发布:程控电话交换机编程 编辑:程序博客网 时间:2024/05/15 08:46
带正则表达式的文本框控件:
JS代码:
function checkNoZeroInteger(textbox, valType) { if (valType == "正整数") { var reg = /^\+?[1-9][0-9]*$/; //验证非零整数的正则表达式 if (!reg.exec(textbox.value)) {//验证不通过 alert("不是正确非零正整数!"); //输出提示 textbox.value = ""; //清空输入框 } } else if (valType == "大写字母") { var reg = /^[A-Z]+$/; //验证大写字母的正则表达式 if (!reg.exec(textbox.value)) {//验证不通过 alert("只能是大写字母!"); //输出提示 textbox.value = ""; //清空输入框 } } else if (valType == "小写字母") { var reg = /^[a-z]+$/; //验证大写字母的正则表达式 if (!reg.exec(textbox.value)) {//验证不通过 alert("只能是小写字母!"); //输出提示 textbox.value = ""; //清空输入框 } }}
将JS文件的生成操作属性改成嵌入的资源
C#代码:
using System;using System.Collections.Generic;using System.ComponentModel;using System.Linq;using System.Text;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;[assembly: WebResource("CustomerTextControl.js.Validate.js", "text/javascript")]namespace CustomerTextControl{ [DefaultProperty("Text")] [ToolboxData("<{0}:TextBoxs runat=server></{0}:TextBoxs>")] public class TextBoxs:TextBox { [Bindable(true)] [Category("Appearance")] [DefaultValue("")] [Localizable(true)] [Description("带正则表达式的Text文本框")] public string Text { get { String s = (String)ViewState["Text"]; return ((s == null) ? "[" + this.ID + "]" : s); } set { ViewState["Text"] = value; } } private ValidateType _vt; /// <summary> /// 类型属性 /// </summary> public ValidateType Vt { get { return _vt; } set { _vt = value; } } /// <summary> /// 类型 /// </summary> public enum ValidateType { 正整数=1, 大写字母=2, 小写字母=3 } protected override void OnPreRender(EventArgs e) { base.OnPreRender(e);//保留父类的方法功能 Page.ClientScript.RegisterClientScriptResource(this.GetType(), "CustomerTextControl.js.Validate.js"); } protected override void Render(HtmlTextWriter writer) { base.Render(writer);//输出文本框 if (this.Vt==ValidateType.正整数) { writer.Write("元"); } else if(this.Vt==ValidateType.大写字母) { writer.Write("大写"); } else if (this.Vt == ValidateType.小写字母) { writer.Write("小写"); } } protected override void AddAttributesToRender(HtmlTextWriter writer) { base.AddAttributesToRender(writer);//保留父类的属性 if (this.Vt==ValidateType.正整数||this.Vt==ValidateType.小写字母||this.Vt==ValidateType.大写字母) { //添加属性 writer.AddAttribute(HtmlTextWriterAttribute.Onchange, "checkNoZeroInteger(this,'"+this.Vt+"')"); } } }}
定义元数据文件写法:
JS文件:
[assembly: WebResource("CustomerTextControl.js.Validate.js", "text/javascript")]
图片文件:
[assembly: WebResource("CustomerTextControl.image.button.jpg","img/gif")]
CSS文件:
[assembly: WebResource("CustomerTextControl.css.Stylesheet.css","text/css")]
ASP代码:
<body> <form id="form1" runat="server"> <div> <cc1:TextBoxs ID="TextBoxs1" runat="server" Vt="正整数" onchange="checkNoZeroInteger(this,'正整数')"></cc1:TextBoxs> <cc1:TextBoxs ID="TextBoxs2" runat="server" Vt="大写字母" onchange="checkNoZeroInteger(this,'大写字母')"></cc1:TextBoxs> <cc1:TextBoxs ID="TextBoxs3" runat="server" Vt="小写字母" onchange="checkNoZeroInteger(this,'小写字母')"></cc1:TextBoxs> </div> </form></body>
- 开发扩展的文本框控件
- EXT为文本框控件扩展验证属性
- 多年前写的文本框扩展控件(有ValueChanging事件等),已放github
- 过滤特定字符的文本框控件开发(具有特定数据类型的TextBox控件开发)
- Windows Phone 7 扩展TextBox控件为数字输入文本框
- asp.net控件开发--文本框(入门篇)
- 控件开发-扩展自定义验证控件1
- 扩展的ToolStripEx控件
- 求QQ里面的文本框控件
- 文本框控件的消息及应用
- 根据文本框的内容,动态设置控件
- C#下文本框的建议提示控件
- 基于input文本框实现的数字控件
- 文本框控件JTextField和JTextArea的使用
- [ASP][扩展控件开发]控制输入数字型的TEXTBOX开发笔记 (一)--功能目标
- Gtk+在EP9315开发板上的移植及控件扩展开发
- wxWidgets树形控件的扩展
- Edit控件的扩展类
- 博弈小结(POJ ,HDU,ZOJ博弈问题小结)
- crtmpserver的架构简介
- hdoj 1233 还是畅通工程---最小生成树---Kruskal算法
- poj 1992 jack
- listview 不可滑动问题解决
- 开发扩展的文本框控件
- 方差与协方差的一些思考
- 用指向数组的指针作函数参数
- 我的第一个安卓应用---音乐播放器
- Hibernate从入门到精通(十)多对多单向关联映射
- Mysql 约束(Constraint)
- hdu4618 多校第二场
- H.264解码器中参考图像的管理
- Android 状态栏通知Notification、NotificationManager详解