【转】Asp.net Ajax 编程备忘录----细数28个服务器端控件

1.Accordion
   功能:实现了QQ、Msn好友分类的折叠效果,就像包含了多个CollapsiblePanels
   细节: (1)不要把Accordion放在Table种同时又把 FadeTransitions 设置为True,这将引起布局混乱
                (2)每一个 AccordionPane control 有一个Header 和Content的 template
                (3)在Content中可以进行任意扩展,你什么都可以放上^_^
                (4)有三种AutoSize modes :None(推荐) Limit  Fill
                (5)Accordion表现的更像是一个容器
None.gif  代码示意:           
None.gif      
<ajaxToolkit:Accordion ID="MyAccordion" runat="server" SelectedIndex="0" HeaderCssClass="accordionHeader"
None.gif            ContentCssClass
="accordionContent" FadeTransitions="false" FramesPerSecond="40"
None.gif            TransitionDuration
="250" AutoSize="None">
None.gif            
<Panes>
None.gif                
<ajaxToolkit:AccordionPane ID="AccordionPane1" runat="server">
None.gif                    
<Header>
None.gif                        
<href="" onclick="return false;" class="accordionLink">1. Accordion</a></Header>
None.gif                    
<Content>
None.gif                    
</Content>
None.gif                
</ajaxToolkit:AccordionPane>
None.gif            
</Panes>
None.gif        
</ajaxToolkit:Accordion> 
 

 2. AlwaysVisibleControl 
   功能:最多的应用是在线小说的目录和不胜其烦的浮动小广告
   细节: (1)避免控件闪烁,把这个控件要在目标位置时使用absolutely position
                (2) HorizontalSide="Center" VerticalSide="Top" 使用这个方法控制浮动在什么位置
None.gif 代码示意: 
None.gif    
<cc1:AlwaysVisibleControlExtender ID="AlwaysVisibleControlExtender1" HorizontalSide="Center" VerticalSide="Top"  TargetControlID="Panel1" runat="server">

3.Animation
   功能:28个控件种效果最酷的!顾名思义实现动画效果
   细节: (1)不只是控件:pluggable, extensible framework
                (2)用在什么时候:OnLoad  OnClick  OnMouseOver OnMouseOut OnHoverOver OnHoverOut
                (3)具体使用有很多可以谈的,有理由单独写一个Animation Xml 编程介绍
None.gif  代码示意:
None.gif   
<ajaxToolkit:AnimationExtender ID="ae"
None.gif  runat
="server" TargetControlID="ctrl">
None.gif    
<Animations>
None.gif        
<OnLoad> dot.gif </OnLoad>
None.gif        
<OnClick> dot.gif </OnClick>
None.gif        
<OnMouseOver> dot.gif </OnMouseOver>
None.gif        
<OnMouseOut> dot.gif </OnMouseOut>
None.gif        
<OnHoverOver> dot.gif </OnHoverOver>
None.gif        
<OnHoverOut> dot.gif </OnHoverOut>
None.gif    
</Animations>
None.gif
</ajaxToolkit:AnimationExtender>

4.CascadingDropDown
   功能:DropDownList联动,调用Web Service
   细节: (1)DropDownList行为扩展
                (2)如果使用Web service 方法签名必须符合下面的形式:
                [WebMethod]
                public CascadingDropDownNameValue[] GetDropDownContents(
                string knownCategoryValues, string category){...}
None.gif 代码示意:
None.gif                 
<ajaxToolkit:CascadingDropDown ID="CascadingDropDown1" runat="server" TargetControlID="DropDownList1" Category="Make"  PromptText="Please select a make"  LoadingText="[Loading makesdot.gif]"  ServicePath="CarsService.asmx" ServiceMethod="GetDropDownContents"/>
None.gif                
<ajaxToolkit:CascadingDropDown ID="CascadingDropDown2" runat="server" TargetControlID="DropDownList2" Category="Model" PromptText="Please select a model" LoadingText="[Loading modelsdot.gif]" ServiceMethod="GetDropDownContentsPageMethod" ParentControlID="DropDownList1"/>
None.gif                
<ajaxToolkit:CascadingDropDown ID="CascadingDropDown3" runat="server" TargetControlID="DropDownList3" Category="Color" PromptText="Please select a color" LoadingText="[Loading colorsdot.gif]" ServicePath="~/CascadingDropDown/CarsService.asmx" ServiceMethod="GetDropDownContents" ParentControlID="DropDownList2"/>
None.gif   

   5.CollapsiblePanel
   功能:Xp任务栏折叠效果
   细节: (1)可以扩展任何一个 ASP.NET Panel control
                (2) CollapsiblePanel 默认认为使用了 标准 CSS box model 早期的浏览器要!DOCTYPE 中设置页面为自适应方式提交数据rendered in IE's standards-compliant mode.
None.gif 代码示意:
None.gif   
<ajaxToolkit:CollapsiblePanelExtender ID="cpe" runat="Server"
None.gif    TargetControlID
="Panel1"
None.gif    CollapsedSize
="0"
None.gif    ExpandedSize
="300"
None.gif    Collapsed
="True"
None.gif    ExpandControlID
="LinkButton1"
None.gif    CollapseControlID
="LinkButton1"
None.gif    AutoCollapse
="False"
None.gif    AutoExpand
="False"
None.gif    ScrollContents
="True"
None.gif    TextLabelID
="Label1"
None.gif    CollapsedText
="Show Detailsdot.gif"
None.gif    OpenedText
="Hide Details" 
None.gif    ImageControlID
="Image1"
None.gif    ExpandedImage
="~/images/collapse.jpg"
None.gif    CollapsedImage
="~/images/expand.jpg"
None.gif    ExpandDirection
="Height"/>
   6.ConfirmButton
   功能:就是弹出来一个确定对话框
   细节: 本人认为不是最简单实现的方法,我的方法:
   this.Button1.Attributes["onclick"]="javascript:return confirm('确定要停止下载么?');";
      不知道是不是我没有发现这个控件的其它优势。
     
7.DragPanel
   功能:页面拖动
   细节: (1)TargetControlID 要拖动的控件
                (2)DragHandleID   拖动的标题栏所在的ControlID 
None.gif代码示意
None.gif 
<ajaxToolkit:DragPanelExtender ID="DPE1" runat="server"
None.gif    TargetControlID
="Panel3"
None.gif    DragHandleID
="Panel4" />
8.DropDown
   功能:什么都可以以下拉菜单的形式弹出来
   细节: (1)TargetControlID要在什么控件上实现扩展
                (2)DropDownControlID弹出来什么
None.gif 代码示意:
None.gif  
<asp:Panel ID="DropPanel" runat="server" CssClass="ContextMenuPanel" Style="display: none;
None.gif            visibility: hidden;"
>
None.gif             
<asp:LinkButton runat="server" ID="Option1" Text="Option 1" CssClass="ContextMenuItem"
None.gif                OnClick
="OnSelect" />
None.gif            
<asp:LinkButton runat="server" ID="Option2" Text="Option 2" CssClass="ContextMenuItem"
None.gif                OnClick
="OnSelect" />
None.gif            
<asp:LinkButton runat="server" ID="Option3" Text="Option 3 (Click Me!)" CssClass="ContextMenuItem"
None.gif                OnClick
="OnSelect" />
None.gif        
</asp:Panel>
None.gif        
<cc1:DropDownExtender runat="server" ID="DDE" TargetControlID="TextLabel"
None.gif            DropDownControlID
="DropPanel" />

9.DropShadow
   功能:阴影效果,其实可以放给美工实现
   细节: (1)Width 单位:px  默认5px
                (2)Opacity  不透明度0-1.0 默认.5
None.gif  代码示意:
None.gif    
<ajaxToolkit:DropShadowExtender ID="dse" runat="server"
None.gif        TargetControlID
="Panel1" 
None.gif        Opacity
=".8" 
None.gif        Rounded
="true"
None.gif        TrackPosition
="true" />
10.DynamicPopulate
   功能:能实用Web Service或页面方法来替换控件的内容
   细节: (1)ClearContentsDuringUpdate  替换之前先清除以前的内容(默认True)
                (2)PopulateTriggerControlID 触发器绑定的控件 单击时触发
                (3)ContextKey传递给Web Service的随机字符串
                (4) Web Service方法签名必须符合下面的形式:
                [WebMethod]
                string DynamicPopulateMethod(string contextKey)
                {...}
                Note you can replace "DynamicPopulateMethod" with a naming of your choice, but the return
                type and parameter name and type must exactly match, including case. 
None.gif代码示意:
None.gif
<ajaxToolkit:DynamicPopulateExtender ID="dp" runat="server"
None.gif    TargetControlID
="Panel1" 
None.gif    ClearContentsDuringUpdate
="true" 
None.gif    PopulateTriggerControlID
="Label1" 
None.gif    ServiceMethod
="GetHtml" 
None.gif    UpdatingCssClass
="dynamicPopulate_Updating" />
None.gif              
11.FilteredTextBox
   功能:文本框数据过滤
   细节: (1)过滤条件Numbers LowercaseLetters UppercaseLetters   Custom
                (2)过滤条件也可以是Custom的组合 FilterType="Custom, Numbers"
                (3)ValidChars="+-=/*()." Custom要定义这样的有效字符串
                (4) 其实这是个鸡肋:你可以输入中文,聊胜于无,忍了
None.gif示意代码:
None.gif
<ajaxToolkit:FilteredTextBoxExtender ID="ftbe" runat="server"
None.gif        TargetControlID
="TextBox3"         
None.gif        FilterType
="Custom, Numbers"
None.gif        ValidChars
="+-=/*()." />
12.HoverMenu
   功能:鼠标靠近时显示菜单,可以用在在线数据修改的表格上作为功能菜单
   细节: (1)PopupControlID要弹出来什么
                (2)PopupPostion 在哪里弹出来Left (Default), Right, Top, Bottom, Center.
                (3)OffsetX/OffsetY 弹出项与源控件的距离
                (4) PopDelay 弹出延时显示 单位milliseconds. Default is 100.
None.gif代码示意:
None.gif
<ajaxToolkit:HoverMenuExtender ID="hme2" runat="Server"
None.gif    TargetControlID
="Panel9"
None.gif    HoverCssClass
="popupHover"
None.gif    PopupControlID
="PopupMenu"
None.gif    PopupPosition
="Left"
None.gif    OffsetX
="0"
None.gif    OffsetY
="0"
None.gif    PopDelay
="50" />
13.ModalPopup
   功能:Xp的关机效果,后面全部灰掉,很多邮箱的删除对话框都着种效果
   细节: (1)本质上讲这是一个对话框模版,比ConfirmButton有意义有更强的扩展性!
                (2)从下面的代码中我们发现 点OK的时候可以调用后台方法
                (3)同时可以执行一段脚本
None.gif代码示意:
None.gif  
<asp:Panel ID="Panel2" runat="server" CssClass="modalPopup" style="display:none">
None.gif        
<p>
None.gif            
<asp:Label ID="Label1" runat="server" BackColor="Blue" ForeColor="White" Style="position: relative"
None.gif                Text
="信息提示"></asp:Label>&nbsp;</p>
None.gif        
<>确定要删除当前下载的任务么?</p>
None.gif        
<style="text-align:center;">
None.gif        
<asp:Button ID="Button1" runat="server" Text="OK" ></asp:Button>
None.gif        
<asp:Button ID="Button2" runat="server" Text="Cancel"></asp:Button>
None.gif        
</p>
None.gif    
</asp:Panel>
None.gif    
<ajaxToolkit:ModalPopupExtender ID="ModalPopupExtender" runat="server" TargetControlID="LinkButton1" 
None.gif    PopupControlID
="Panel2" BackgroundCssClass="modalBackground" DropShadow="true" 
None.gif    OkControlID
="Button1" OnOkScript="onOk()" CancelControlID="CancelButton" />
14.MutuallyExlcusiveCheckBox
   功能:互斥复选框就像Radio一样
   细节: (1)Key属性用来分组就像RdiolistGroup一样
                (2)argetControlID用来绑定已有的CheckBox
None.gif   代码示意:
None.gif               
<ajaxToolkit:MutuallyExclusiveCheckboxExtender runat="server"
None.gif    ID
="MustHaveGuestBedroomCheckBoxEx"
None.gif    TargetControlID
="MustHaveGuestBedroomCheckBox" 
None.gif    Key
="GuestBedroomCheckBoxes" />
15.NoBot
   功能:Captcha 图灵测试 反垃圾信息控件
   细节: (1)OnGenerateChallengeAndResponse 这个属性是EventHandler<NoBotEventArgs> 调用服务器端的方法,注意方法签名
                       例如:   protected void CustomChallengeResponse(object sender, NoBotEventArgs e) {……}
None.gif 代码示意:
None.gif    
<ajaxToolkit:NoBot
None.gif  
ID="NoBot2"
None.gif  runat
="server"
None.gif  OnGenerateChallengeAndResponse
="CustomChallengeResponse"
None.gif  ResponseMinimumDelaySeconds
="2"
None.gif  CutoffWindowSeconds
="60"
None.gif  CutoffMaximumInstances
="5" />
16.NumericUpDown
   功能:实现Winform里面的Updown
   细节: (1)普通整数增减
                (2)值列表循环显示比如下面的第二个例子RefValues
                (3)调用Web Service的格式:
               
None.gif<ajaxToolkit:NumericUpDownExtender ID="NUD1" runat="server"
None.gif    TargetControlID
="TextBox1" 
None.gif    Width
="100"
None.gif    RefValues
="January;February;March;April"
None.gif    TargetButtonDownID
="Button1"
None.gif    TargetButtonUpID
="Button2"
None.gif    ServiceDownPath
="WebService1.asmx"
None.gif    ServiceDownMethod
="PrevValue"
None.gif    ServiceUpPath
="WebService1.asmx"
None.gif    ServiceUpMethod
="NextValue"
None.gif    Tag
="1" />
None.gif代码示意:
None.gif           
<ajaxToolkit:NumericUpDownExtender ID="NumericUpDownExtender1" runat="server"
None.gif                    TargetControlID
="TextBox1" Width="120" RefValues=""
None.gif                    ServiceDownMethod
="" ServiceUpMethod="" TargetButtonDownID="" TargetButtonUpID="" />
None.gif                
<ajaxToolkit:NumericUpDownExtender ID="NumericUpDownExtender2" runat="server"
None.gif                    TargetControlID
="TextBox2" Width="120" RefValues="January;February;March;April;May;June;July;August;September;October;November;December"
None.gif                    ServiceDownMethod
="" ServiceUpMethod="" TargetButtonDownID="" TargetButtonUpID="" />
None.gif                       
<ajaxToolkit:NumericUpDownExtender ID="NumericUpDownExtender4" runat="server"
None.gif                    TargetControlID
="TextBox4" Width="80" TargetButtonDownID="img1"
None.gif                    TargetButtonUpID
="img2" RefValues="" ServiceDownMethod="" ServiceUpMethod="" />

17.PagingBulletedList
   功能:扩展BulletedList的分页功能
   细节: (1)可以控制每页最多显示多少条,是否排序
                (2)IndexSize表示index headings 的字符数,如果MaxItemPerPage设置了概属性被忽略
                (3)MaxItemPerPage分页每页最大条数
None.gif代码示意:
None.gif 
<ajaxToolkit:PagingBulletedListExtender ID="PagingBulletedListExtender1" BehaviorID="PagingBulletedListBehavior1" runat="server"
None.gif                    TargetControlID
="BulletedList1"
None.gif                    ClientSort
="true"
None.gif                    IndexSize
="1"
None.gif                    Separator
=" - "
None.gif                    SelectIndexCssClass
="selectIndex"
None.gif                    UnselectIndexCssClass
="unselectIndex" /> 
None.gif

18.PasswordStrength
   功能:验证密码强度
   细节: StrengthIndicatorType两种显示方式:文字提示,进度条提示
None.gif代码示意:
None.gif
<ajaxToolkit:PasswordStrength ID="PasswordStrength1" runat="server" DisplayPosition="RightSide" TargetControlID="TextBox1"
None.gif                    StrengthIndicatorType
="Text" PreferredPasswordLength="10" PrefixText="Strength:" 
None.gif                    HelpStatusLabelID
="TextBox1_HelpLabel" TextCssClass="TextIndicator_TextBox1"  TextStrengthDescriptions="Very Poor;Weak;Average;Strong;Excellent"
None.gif                    MinimumNumericCharacters
="0" MinimumSymbolCharacters="0" RequiresUpperAndLowerCaseCharacters="false"/>
None.gif    
<ajaxToolkit:PasswordStrength ID="PasswordStrength2" runat="server" DisplayPosition="RightSide" TargetControlID="TextBox2"
None.gif                    StrengthIndicatorType
="BarIndicator" PreferredPasswordLength="15" HelpStatusLabelID="TextBox2_HelpLabel"
None.gif                     BarIndicatorCssClass
="BarIndicator_TextBox2" BarBorderCssClass="BarBorder_TextBox2"
None.gif                     MinimumNumericCharacters
="1" MinimumSymbolCharacters="1" RequiresUpperAndLowerCaseCharacters="true" />
None.gif    
<ajaxToolkit:PasswordStrength ID="PasswordStrength3" runat="server" DisplayPosition="BelowLeft" TargetControlID="TextBox3"
None.gif                    StrengthIndicatorType
="Text" PreferredPasswordLength="20" PrefixText="Meets Policy? " TextCssClass="TextIndicator_TextBox3"
None.gif                     MinimumNumericCharacters
="2" MinimumSymbolCharacters="2" RequiresUpperAndLowerCaseCharacters="true"
None.gif                     TextStrengthDescriptions
="Not at all;Very Low compliance;Low Compliance;Average Compliance;Good Compliance;Very High Compliance;Yes"
None.gif                     HelpHandleCssClass
="TextIndicator_TextBox3_Handle" HelpHandlePosition="LeftSide" />

19.PopupControl
   功能:任何控件上都可以弹出任何内容
   细节: (1)TargetControlID - The ID of the control to attach to
                (2)PopupControlID - The ID of the control to display
                (3)CommitProperty -属性来标识返回的值
                (4) CommitScript -把返回结果值通过脚本处理,用到CommitProperty
None.gif  代码示意:
None.gif      
<ajaxToolkit:PopupControlExtender  ID="PopupControlExtender2" runat="server" TargetControlID="MessageTextBox" 
None.gif      PopupControlID
="Panel2" CommitProperty="value" CommitScript="e.value += ' - do not forget!';" Position="Bottom" />

20.Rating
   功能:级别控件
   细节: 又是一个鸡肋,没有太大实用价值,看代码吧
None.gif   代码示意:
None.gif   
<ajaxToolkit:Rating ID="ThaiRating" runat="server"
None.gif    CurrentRating
="2"
None.gif    MaxRating
="5"
None.gif    StarCssClass
="ratingStar"
None.gif    WaitingStarCssClass
="savedRatingStar"
None.gif    FilledStarCssClass
="filledRatingStar"
None.gif    EmptyStarCssClass
="emptyRatingStar"
None.gif    OnChanged
="ThaiRating_Changed" /> 
None.gif    
   
21.ReorderList
   功能:这个控件的炫酷程度仅次于Animation ,可以动态移动数据
   细节: (1)绑定数据,拖动数据之后数据将被更新到绑定源
                (2)它不是已有控件的扩展是全新的服务器端控件,只是它对Ajax行为是敏感的
                (3)重排的实现有两种方式:CallBack PostBack 前者的发生在页面上是没有PostBack的(也就是没有刷新页面)
                (4) 而数据添加或者编辑的时候就必须要使用PostBack来同步服务器端的数据状态
                (5)PostbackOnReorder就是针对两种策略进行选择
                (6)可以扩展的很多,三言两语难以说尽给出基本框架吧,回头再说
None.gif代码示意:
None.gif   
<ajaxToolkit:ReorderList ID="ReorderList1" runat="server" 
None.gif    DataSourceID
="ObjectDataSource1"
None.gif    DragHandleAlignment
="Left" 
None.gif    ItemInsertLocation
="Beginning"
None.gif    DataKeyField
="ItemID" 
None.gif    SortOrderField
="Priority"
None.gif    AllowReorder
="true">
None.gif      
<ItemTemplate>dot.gif</ItemTemplate>
None.gif      
<ReorderTemplate>dot.gif</ReorderTemplate>
None.gif      
<DragHandleTemplate>dot.gif</DragHandleTemplate>
None.gif      
<InsertItemTemplate>dot.gif</InsertItemTemplate>
None.gif
</ajaxToolkit:ReorderList>

22.ResizableControl
   功能:就像设计状态一样可以拖动修改大小,可是有什么实际的意义么,放大字体?没有想到
   细节: (1)HandleCssClass - The name of the CSS class to apply to the resize handle 这个属性必须要有!
None.gif  代码示意:
None.gif
<ajaxToolkit:ResizableControlExtender ID="RCE" runat="server"
None.gif    TargetControlID
="PanelImage"
None.gif    HandleCssClass
="handleImage"
None.gif    ResizableCssClass
="resizingImage"
None.gif    MinimumWidth
="50"
None.gif    MinimumHeight
="20"
None.gif    MaximumWidth
="260"
None.gif    MaximumHeight
="130"
None.gif    OnClientResize
="OnClientResizeImage"
None.gif    HandleOffsetX
="3"
None.gif    HandleOffsetY
="3" />
None.gif    

23.RoundedCorners
   功能:控件圆角 纯粹是控制外观的了,什么时候审美疲劳了还要改,呵呵
   细节: (1)还有一个非常非常坑人的地方:你必须要设置 CssClass="roundedPanel"要不然不起作用
                (2) Radius设置弧度,默认是5
                (3)好象只适用于容器
None.gif代码示意:
None.gif              
<ajaxToolkit:RoundedCornersExtender ID="rce" runat="server"     TargetControlID="Panel1"     Radius="6" />

   
24.Slider
   功能:实现WinForm中的Slider控件效果
   细节: (1)修改文本框的值也可以影响Slider的状态!这个反馈还是有用的!
None.gif  代码示意:
None.gif              
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>                              
None.gif    
<cc1:SliderExtender ID="SliderExtender2" runat="server"
None.gif                                BehaviorID
="Slider2"
None.gif                                TargetControlID
="Slider2"
None.gif                                BoundControlID
="TextBox1"
None.gif                                Orientation
="Horizontal" 
None.gif                                EnableHandleAnimation
="true"
None.gif                                 Minimum
="0"
None.gif                                Maximum
="100"
None.gif                                
/>
None.gif

25.TextBoxWatermark
   功能:文本水印
   细节: 没有什么说的看代码--->
None.gif 代码示意:
None.gif    
<asp:TextBox ID="TextBox1" CssClass="unwatermarked" Width="150" runat="server"></asp:TextBox>
None.gif            
<cc1:TextBoxWatermarkExtender ID="TextBoxWatermarkExtender1" runat="server" TargetControlID="TextBox1" WatermarkText="请输入用户名" WatermarkCssClass="watermarked" />

26.UpdatePanelAnimation
   功能:更新动画效果
   细节:代码结构简单但是要说的东西很多,回头再说写专题吧
None.gif代码示意:
None.gif  
<ajaxToolkit:UpdatePanelAnimationExtender ID="ae"
None.gif  runat
="server" TargetControlID="up">
None.gif     
<Animations>
None.gif        
<OnUpdating> dot.gif </OnUpdating>
None.gif        
<OnUpdated> dot.gif </OnUpdated>
None.gif    
</Animations>
None.gif
</ajaxToolkit:UpdatePanelAnimationExtender>

27.ToggleButton
   功能:就是把一个CheckBox的逻辑应用到一个按钮上,于是就有了双态按钮这么个玩意,有点意思啊
   闲言少叙,看代码:
None.gif<asp:CheckBox ID="CheckBox1" Checked="true" Text="I like ASP.NET" runat="server"/>
None.gif    
<cc1:ToggleButtonExtender ID="ToggleButtonExtender1" runat="server" TargetControlID="CheckBox1" ImageWidth="19"
None.gif     ImageHeight
="19" UncheckedImageUrl="Image/down.gif" CheckedImageUrl="Image/up.gif" CheckedImageAlternateText="Check" 
None.gif     UncheckedImageAlternateText
="UnCheck" />

28.ValidatorCallout
   功能:Windows系统中最常见的气泡提示,比如你磁盘空间不足的时候……
   细节: 是对数据验证控件的扩展,比较新鲜
None.gif代码示意:
None.gif 
<asp:RequiredFieldValidator runat="server" ID="NReq" ControlToValidate="NameTextBox" Display="None" ErrorMessage="<b>Required Field Missing</b><br />A name is required." />
None.gif        
<asp:RequiredFieldValidator runat="server" ID="PNReq" ControlToValidate="PhoneNumberTextBox" Display="None" ErrorMessage="<b>Required Field Missing</b><br />A phone number is required.<div style='margin-top:5px;padding:5px;border:1px solid #e9e9e9;background-color:white;'><b>Other Options:</b><br /><a href='javascript:alert(&quot;not implemented but you get the idea;)&quot;);'>Extract from Profile</a></div>" />
None.gif        
<asp:RegularExpressionValidator runat="server" ID="PNRegEx" ControlToValidate="PhoneNumberTextBox" Display="None" ErrorMessage="<b>Invalid Field</b><br />Please enter a phone number in the format:<br />(###) ###-####" ValidationExpression="((\(\d{3}\) ?)|(\d{3}-))?\d{3}-\d{4}" />
None.gif        
<cc1:ValidatorCalloutExtender runat="Server" ID="NReqE" TargetControlID="NReq" HighlightCssClass="highlight" />
None.gif        
<cc1:ValidatorCalloutExtender runat="Server" ID="PNReqE" TargetControlID="PNReq" HighlightCssClass="highlight" Width="350px" />
None.gif        
<cc1:ValidatorCalloutExtender runat="Server" ID="PNReqEx" TargetControlID="PNRegEx" HighlightCssClass="highlight" />

                                                                                                                                                           全文完
 From:http://www.cnblogs.com/me-sa

转载于:https://www.cnblogs.com/xujiaci/archive/2008/02/02/1062204.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值