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 阻止按钮执行操作

  • 相关阅读:
    BestCoder17 1001.Chessboard(hdu 5100) 解题报告
    codeforces 485A.Factory 解题报告
    codeforces 485B Valuable Resources 解题报告
    BestCoder16 1002.Revenge of LIS II(hdu 5087) 解题报告
    codeforces 374A Inna and Pink Pony 解题报告
    codeforces 483B Friends and Presents 解题报告
    BestCoder15 1002.Instruction(hdu 5083) 解题报告
    codeforces 483C.Diverse Permutation 解题报告
    codeforces 483A. Counterexample 解题报告
    NSArray中地内存管理 理解
  • 原文地址:https://www.cnblogs.com/zblc2016/p/5966592.html
Copyright © 2011-2022 走看看