网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.通过启动脚本来感受ASP的力量.
.Response对象2.
.WSH实用讲座---第二讲 创建用户、.
.Asp深度揭密(下).
.SQL数据操作基础(中级) &nb.
.利 用 ISAPI 实 现 向 数 据 库 .
.ASP 3.0高级编程(十九).
.在ASP中使用数据库.
.ASP系列讲座(二十二)使用国际站.
.手把手教你使用Java来编写ASP组件.
.ASP.NET 入门的五个步骤.
.ASP讲座之一:网页开发利器:高效.
.ASP讲座之十:自己动手编写组件.
.三天学好ADO之第一天.
.XML DOM介绍和例子(二).
.动手写个小组件(组件入门)_asp.
.WAP中的ASP技术(一).
.SQL语言快速入门之一  .
.VPN技术详解(下).
.解析asp的脚本语言.

APS + 中文教程(三)--服务器端控制(一)

发表日期:2000-9-29


三、Asp+ 服务器端控制 (Asp+ Server Control)

上次讲了一些有关ASP + 服务器端控制的内容,现在来详细讲一下。Asp + 服务器端控制是微软新提出的概念,它的实现是基于微软的.NET框架,它实际上是一种特殊的HTML元素,服务器端与它是交互的关系,在生成这些元素后不但能接受它们的值,还可以动态控制它们,以完成一些很COOL的功能。下面列出所有ASP + 目前支持的所有28个服务器端控制及其具体用法。

1、    Adrotator : 广告轮换服务器端控制,它的具体行为是在指定的XML文件里定义的,如下:

  <Advertisements>
           <Ad>
          <ImageUrl>/quickstart/aspplus/images/banner1.gif</ImageUrl>
          <NavigateUrl>http://www.microsoft.com</NavigateUrl>
          <AlternateText>Microsoft.com</AlternateText>
          <Keyword>Computers</Keyword>
          <Impressions>80</Impressions>
       </Ad>
</Advertisements>

属性的含义:
<ImageUrl>:      要显示得图片绝对或相对路径。
<NavigateUrl>:    点击图片所指向的URL,如果为空则图片不能被点击。
<AlternateText>:  鼠标移动到图片上所显示的提示信息。
<Keyword>:        指定改广告页面的过滤关键字。
<Impressions>:    该广告的显示百分比,这个数值越高,显示的次数越多。

2、    button: 这个好理解,类似于传统表单中的Button,但用法稍有不同,具体用法我就不祥述了。

3、    Calendar: 一个很方便的日历控制,这样就不用再用javascript费劲编了,还得计算闰年什么的,要多烦有多烦,看下面的例子:

<html>
<head>

    <script language="C#" runat="server">

        void Date_Selected(object s, EventArgs e) {
            Label1.Text = "Selected date is: " + Calendar1.SelectedDate.ToShortDateString();
        }

    </script>

</head>

<body>

    <h3><font face="Verdana">Calendar Example</font></h3>

    <form runat=server>

        <asp:Calendar id=Calendar1 onselectionchanged="Date_Selected" runat="server" />
        
        <p>
        
        <asp:Label id=Label1 runat="server" />
        
    </form>

</body>
</html>

这个控制带有一个属性SelectionMode,它的具体属性值如下:
Day :            可以选择任意一个单独的日子。
DayWeek:        可以选择一天或一个星期。
DayWeekMonth:   可以选择一天或一个星期或一个月。
None:            不能选择日期。


4、    CheckBox :  检查框嘛,没什么好说的,但有一点不同,那就是如果它的AutoPostBack属性设为真,则点选它时可以提交到服务器端。

5、    CheckBoxList : 顾名思义,一组可多选的检查框列表,它有两个重要的属性,RepeatLayout和RepeatDirection,控制这个列表的布局,设成table则该列表以表格为底,如果设成flow,则没有表格,RepeatDirection默认为vertical,垂直排列,如果设为horizontally,则水平排列。

6、    CompareValidator :进行两个服务器端控制的比较。它有三个不能缺少的重要属性:ControlToValidate , ControlToCompare 决定要比较那些控制,Operator决定比较的方式,是等于、不等于、大于、小于等。具体实现看下面的例子:

  CompareValidator1.aspx

<%@ Page clienttarget=downlevel %>

<html>
<head>
    <script language="C#" runat="server">

        void Button1_OnSubmit(Object sender, EventArgs e) {

            if (Page.IsValid) {
               lblOutput.Text = "Result: Valid!";
            }
            else {
               lblOutput.Text = "Result: Not valid!";
            }
        }

        void lstOperator_SelectedIndexChanged(Object sender, EventArgs e) {

            comp1.Operator = (ValidationCompareOperator) lstOperator.SelectedIndex;
            comp1.Validate();
        }

   </script>

</head>
<body>

    <h3><font face="Verdana">CompareValidator Example</font></h3>
    <p>Type a value in each textbox, select a comparison operator, then click "Validate" to test.</p>

    <form runat=server>

      <table bgcolor="#eeeeee" cellpadding=10>
      <tr valign="top">
        <td>
            <h5><font face="Verdana">String 1:</font></h5>
            <asp:TextBox Selected id="txtComp" runat="server"></asp:TextBox>
        </td>
        <td>
            <h5><font face="Verdana">Comparison Operator:</font></h5>

            <asp:ListBox id="lstOperator" OnSelectedIndexChanged="lstOperator_SelectedIndexChanged" runat="server">
                    <asp:ListItem Selected Value="Equal" >Equal</asp:ListItem>
                    <asp:ListItem Value="NotEqual" >NotEqual</asp:ListItem>
                    <asp:ListItem Value="GreaterThan" >GreaterThan</asp:ListItem>
                    <asp:ListItem Value="GreaterThanEqual" >GreaterThanEqual</asp:ListItem>
                    <asp:ListItem Value="LessThan" >LessThan</asp:ListItem>
                    <asp:ListItem Value="LessThanEqual" >LessThanEqual</asp:ListItem>
            </asp:ListBox>
        </td>
        <td>
            <h5><font face="Verdana">String 2:</font></h5>
            <asp:TextBox id="txtCompTo" runat="server"></asp:TextBox><p>
            <asp:Button runat=server Text="Validate" ID="Button1" onclick="Button1_OnSubmit" />
        </td>
      </tr>
      </table>

      <asp:CompareValidator id="comp1" ControlToValidate="txtComp" ControlToCompare = "txtCompTo" Type="String" runat="server"/>

      <br>
      
      <asp:Label ID="lblOutput" Font-Name="verdana" Font-Size="10pt" runat="server"/>

    </form>

</body>
</html>


7、    CustomValidator:自定义比较,作用就是可以进行上述基本比较不能完成的比较操作。这个比较可以运行在服务器端,也可以运行在客户端,如用vbscript或javascript。用法很简单,看例子吧。

CustomValidator1.aspx

<html>
<head>
    <script language="C#" runat=server>

        void ValidateBtn_OnClick(object sender, EventArgs e) {

            if (Page.IsValid) {
               lblOutput.Text = "Page is valid!";
            }
            else {
               lblOutput.Text = "Page is not valid! :-(";
            }
        }

        bool ServerValidate (object source, string value) {

            int num = Int32.FromString(value);
            
            if (num%2 == 0)
                return true;
            else
                return false;
        }
        
   </script>

</head>
<body>

<h3><font face="Verdana">CustomValidator Example</font></h3>

<form runat="server">

    <asp:Label id=lblOutput runat="server"
        Text="Enter an even number:"
        Font-Name="Verdana"
        Font-Size="10pt" /><br>

    <p>

    <asp:TextBox id=Text1 runat="server" />
    
    &nbsp;&nbsp;

    <asp:CustomValidator id="CustomValidator1" runat="server"
        ControlToValidate="Text1"
        OnServerValidationFunction="ServerValidate"
        Display="Static"
        Font-Name="verdana" Font-Size="10pt">
           Not an even number!
    </asp:CustomValidator>

    <p>

    <asp:Button text="Validate" onclick="ValidateBtn_OnClick" runat="server" />

</form>

</body>
</html>

上一篇:asp+中文教程(二)-- Asp+ Web Forms 人气:14527
下一篇:SQL数据操作基础(初级)  4 人气:15223
浏览全部ASP+中文教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐