zoukankan      html  css  js  c++  java
  • Webform(Repeater控件)

    一、Repeater控件

    有五大模板

     ItemTemplate :有多少条数据,执行多少遍      
      AlternatingItemTemplate : 对交替数据项进行格式设置      
     SeparatorTemplate : 对分隔符进行格式设置      
      HeaderTemplate : 对页眉进行格式设置 ,在加载开始执行一遍    
      FooterTemplate : 对页脚进行格式设置,在加载最后执行一遍     

    1.数据绑定

    list<Users> li =new usersData().Select();
    
    Repeater1.DataSource=li;
    Repeater1.DataBind();

    2.属性扩展和数据访问类构建

    并判断年龄是不是大于16岁,大于的话背景色变红(库存预警)

     public string UserName { get; set; }
        public string PassWord { get; set; }
        public string NickName { get; set; }
        public string NickName1
        {
            get
            {
                if (NickName == "")
                {
                    return "<无>";
                }
                else
                {
                    return NickName;
                }
            }
    
        }
    
    
        public bool Sex { get; set; }
        public string SexStr
        {
            get { return Sex ? "" : ""; }
        }
    
    
        public DateTime Birthday { get; set; }
        public string BirStr
        {
            get
            {
                return Birthday.ToString("yyyy年MM月dd日");
            }
        }
    
        public int Age {
            get {
                return DateTime.Now.Year - Birthday.Year;
            }
        
        }
    
        public string Red
        {
            get {
                if (Age > 16)
                {
                    return "background-color:red;";
                }
                else
                {
                    return "";
                }
            }
        }
    
        public string Nation { get; set; }
    User

    3.代码

    <asp:Repeater ID="Repeater1" runat="server">
                <HeaderTemplate>
                    <table id="tb1">
                        <tr id="tr_head">
                            <td>用户名</td>
                            <td>密码</td>
                            <td>昵称</td>
                            <td>性别</td>
                            <td>生日</td>
                            <td>年龄</td>
                            <td>民族</td>
                        </tr>
                </HeaderTemplate>
                <ItemTemplate>
                    <tr class="tr_item" style="<%#Eval("Red")%>">
                        <td><%#Eval("Username") %></td>
                        <td><%#Eval("PassWord") %></td>
                        <td><%#Eval("NickName1") %></td>
                        <td><%#Eval("SexStr") %></td>
                        <td><%#Eval("BirStr") %></td>
                        <td><%#Eval("Age") %></td>
                        <td><%#Eval("Nation") %></td>
                    </tr>
                </ItemTemplate>
                <FooterTemplate>
                    </table>
                </FooterTemplate>
            </asp:Repeater>

    项模板中数据显示:<%# Eval("属性名")%>

    4.光棒效果,并且保留原有颜色

     <script type="text/javascript">
                var oItems = document.getElementsByClassName("tr_item");
                for (var i = 0; i < oItems.length; i++)
                {
                    var oldColor = "";
                    oItems[i].onmouseover = function () {
                        oldColor = this.style.backgroundColor;
                        this.style.backgroundColor = "yellow";
                    };
    
                    oItems[i].onmouseout = function () {
                        this.style.backgroundColor = oldColor;
    
                    };
                }
    </script>

    二、webform的三级联动

    与winform一样,只不过需把DropDownList的AutoPostBack属性改为True。

    *简单日期的编写方法:
    用是三个
    DropDownList分别代表年月日,用for循环进行数据绑定,同时并对日进行判断
      for (int i = DateTime.Now.Year; i >= 1900; i--)
                {
                    ListItem li = new ListItem(i.ToString());
                    Year_Dr.Items.Add(li);
                }
    
                for (int i = 1; i <= 12; i++)
                {
                    ListItem li = new ListItem(i.ToString());
                   Mouth_dr.Items.Add(li);
                }
    
                Days();
               Mouth_dr.SelectedValue = DateTime.Now.Month.ToString();
               Day_dr.SelectedValue = DateTime.Now.Day.ToString();
            }
    
            Year_Dr.SelectedIndexChanged +=Year_Dr_SelectedIndexChanged;
            Mouth_dr.SelectedIndexChanged +=Mouth_dr_SelectedIndexChanged;
    //方法及事件
    
     private void Days()
        {
            for (int i = 1; i <= 31; i++)
            {
                int year = Convert.ToInt32(Year_Dr.SelectedValue);
                int mouth = Convert.ToInt32(Mouth_dr.SelectedValue);
                if (mouth == 1 || mouth == 3 || mouth == 5 || mouth == 7 || mouth == 8 || mouth == 10 || mouth == 12)
                {
                }
                else if (mouth == 4 || mouth == 6 || mouth == 9 || mouth == 11)
                {
                    if (i == 31)
                    {
                        break;
                    }
                }
                else if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
                {
                    if (i == 30)
                    {
                        break;
                    }
                }
                else
                {
                    if (i == 29)
                    {
                        break;
                    }
                }
                ListItem li = new ListItem(i.ToString());
                Day_dr.Items.Add(li);
            }
        }
    
    void Mouth_dr_SelectedIndexChanged(object sender, EventArgs e)
    {
        Day_dr.Items.Clear();
        Days();
        
    }
    
    void Year_Dr_SelectedIndexChanged(object sender, EventArgs e)
    {
        Mouth_dr.Items.Clear();
        Day_dr.Items.Clear();
        for (int i = 1; i <= 12; i++)
        {
            ListItem li = new ListItem(i.ToString());
            Mouth_dr.Items.Add(li);
        }
    
        Days();
    }
    日期

    注:

    PlaceHolder给文本框添加水印文字;

    js代码中window.onload = function () {}为页面加载完成成执行脚本,return false 阻止按钮执行操作

  • 相关阅读:
    UML/ROSE学习笔记系列二:UML的概念模型
    UML/ROSE学习笔记系列五:用况对过程的描述
    UML/ROSE学习笔记系列四:图
    SQLSERVER2005 的作业调度(非原创)
    ORACLE 和SQLSERVER 两表之间批量更新数据对比
    彻底领悟javascript中的exec与match方法(非原创)
    对象,对象集合的简单Xml序列化与反序列化(非原创)
    JIT是库存管理的发展趋势
    UML/ROSE学习笔记系列一:建模原理、概念
    C# 多线程与异步操作实现的探讨(非原创)
  • 原文地址:https://www.cnblogs.com/zblc2016/p/5966592.html
Copyright © 2011-2022 走看看