webform注册和Repeater
一、注册
1、日期
(1)年月日用三DropDownList个,分别循环写入数字
代码写在后台
Page_Load中的代码
if (IsPostBack == false)
{
//年绑定数据
for (int i = DateTime.Now.Year; i >= ; i--)
{
ListItem li = new ListItem(i.ToString());
DropDownList5.Items.Add(li);
}
//月绑定数据
for (int i = ; i <= ; i++)
{
ListItem li = new ListItem(i.ToString());
DropDownList6.Items.Add(li);
}
//日绑定数据
rizi();
}
//年改变事件
DropDownList5.SelectedIndexChanged += DropDownList5_SelectedIndexChanged;
//月改变事件
DropDownList6.SelectedIndexChanged += DropDownList6_SelectedIndexChanged;
//日绑定数据函数
private void rizi()
{
int m = Convert.ToInt32(DropDownList6.SelectedValue);
int mm = Convert.ToInt32(DropDownList5.SelectedValue);
int rq = new panriqi().riqi(m, mm);
for (int i = ; i <= rq; i++)
{
ListItem li = new ListItem(i.ToString());
DropDownList7.Items.Add(li);
}
}
//年改变事件
void DropDownList5_SelectedIndexChanged(object sender, EventArgs e)
{
rizi();
}
//月改变事件
void DropDownList6_SelectedIndexChanged(object sender, EventArgs e)
{
rizi();
}
调用的类
public int riqi(int m,int mm) //传入年和月
{
int ri=;
if (m == || m == || m == || m == || m == || m == || m == )
{
ri = ;
}
else if (m == || m == || m == || m == )
{
ri = ;
}
else if (m == )
{ if (mm % == && mm % != || mm % == )
{
ri = ;
}
else
{
ri = ;
}
}
return ri;
}
(2)年月日取值
string s = DropDownList5.SelectedValue + "-" + DropDownList6.SelectedValue + "-" + DropDownList7.SelectedValue;
u.Birthday = Convert.ToDateTime(s);
2、水印 placeHolder
3、JS验证
//验证用户名
var duname = false;
document.getElementById("TextBox1").onblur = function () { if (document.getElementById("TextBox1").value == "") {
document.getElementById("Label1").innerText = "不能为空!";
}
else {
duname = true;
document.getElementById("Label1").innerText = "";
}
}
//注册按钮
document.getElementById("Button1").onclick = function () {
if (!duname || !dupwd || !dupwd2 || !dunicheng || !dup || !duyou || !duyz) {
alert("请确认是否全部填写正确!");
return false;//后面的代码不执行
}
4、三级联动
(1)修改一个属性:AutoPostBack
二、Repeater重复器
四个模板:
HeaderTemplate: 在加载开始执行一遍
ItemTemplate : 有多少条数据,执行多少遍
FooterTemplate :在加载最后执行一遍
AlternatingItemTemplate : 交替项模板
1、用table展示数据库中的数据
<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>
<td>邮箱</td>
<td>民族</td>
<td>地区</td>
</tr>
</HeaderTemplate>
<ItemTemplate>//项模板
<tr class="tr_item" style="<%#Eval("red") %>">//red标红
<td><%#Eval("UserName") %></td>
<td><%#Eval("PassWord") %></td>
<td><%#Eval("NickName") %></td>
<td><%#Eval("sexstr ") %></td>
<td><%#Eval("bir") %></td>
<td><%#Eval("Age") %></td>
<td><%#Eval("Phone") %></td>
<td><%#Eval("Email") %></td>
<td><%#Eval("nationstr") %></td>
<td><%#Eval("Areastr") %></td>
</tr>
</ItemTemplate>
<FooterTemplate>//尾模板
</table>
</FooterTemplate>
</asp:Repeater>
2、属性扩展在实体类中
3、标红(实体类中属性扩展)
//性别为女标红
public string red
{
get
{
if(!_Sex)
{
return "background-color: red;";
}
else
{
return "";
} } }
4、光棒效果(JS)
window.onload = function () {
var oItems = document.getElementsByClassName("tr_item");
for (var i = ; 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; }; }
webform注册和Repeater的更多相关文章
- WebForm控件Repeater
我们会发现用拼接字符串来显示一个查询非常的麻烦,有一个控件Repeater帮助你,省去写Foreach LinQ to SQL类 函数类: using System; using System.Col ...
- Webform——注册验证
服务器控件和客户端控件的交替使用,主要还是获取到各个控件的值,直接用C#或Js判断是否符合条件就可以. 这里是以服务器控件为例子,至于客户端控件则需要写JS代码 .UserBF public clas ...
- Webform(Repeater控件)
一.Repeater控件 有五大模板 ItemTemplate :有多少条数据,执行多少遍 AlternatingItemTemplate : 对交替数据项进行格式设置 Se ...
- Webform——Repeater多表联合显示
对于一个表里,通过外键连接如何显示另一个表的数据,前Winform里可以用封装类来实现. 对于Webform,可以用封装类,也可以用Repeater的ItemDataBound事件(//在项被绑定数据 ...
- WebForm 【Repeater】展示数据
在 Webform 数据展示中 界面层 : HTLM 业务逻辑层 :只能用 C# Repeater 重复器 能够用来循环展示数据 具有5种模板 HeaderTemplat ...
- webform之Repeater控件
一.Repeater控件 数据循环编辑 1.repeater包括五大模板: (1)HeaderTemplate:标题模板,对开头进行编辑,只执行一次 (2)FooterTemplate:页尾结束模板, ...
- webform中Repeater的Command用法、Repeater的替代方法
Command: 在Repeater控件循环执行过程中,可以给每一项的某个按钮或其他控件设置CommandName.CommandArgument属性,用于在后台代码中获取单项 数据进行调用. 需 ...
- Webform(七)——内置对象(Session、Application)和Repeater的Command操作
内置对象:用于页面之间的数据交互 为什么要使用这么内置对象?因为HTTP的无状态性. 一.内置对象 (一)Session 跟Cookies一样用来存储用户数据 1.Session.Cookies对比 ...
- Webform(五)——内置对象(Response、Request)和Repeater中的数据增删改
一.内置对象 (一)Response对象 1.简介:response 对象在ASP中负责将信息传递给用户.Response对象用于动态响应客户端请求,并将动态生成的响应结果返回到客户端浏览器中,使用R ...
随机推荐
- ubuntu QWT Qt
1,下载QWT 2,解压进入QWT的目录 3,qmake,生成makefile文件 4,编译,make 5,安装,make install ,需要root 安装好后会在 /usr/local 目录下有 ...
- squid常用调试命令
解压,编译,make ,make install 就不说了.从 make install 后开始.当你的 squid.conf 配置文档按照你的想法修改完以后,启动 squid 之旅就开始了.1,初始 ...
- html+css图片下弹出蒙版
鼠标移入时弹出蒙版!!! html<!DOCTYPE html<html lang="en"<head> <meta charset="UT ...
- MSP430精准配置高速串口波特率的方法
引言 在实际项目大批量生产调试设备时,笔者发现同样版本的程序在不同设备上运行时效果不一致,一部分设备串口通信正常,另外一部分串口通信不正常.通过示波器对多个设备的串口波特率及系统时钟频率测试, ...
- Fortran学习心得
编译调试: 服务器上所用的编译器可以编译.F90的文件,同时,经过测试已经知道有两款编译器:gfortran和ifort. 另外,查看编译器的bash命令是:gfortran -v. 编程算法思想与C ...
- 转 https://www.zhihu.com/question/27606493/answer/37447829
著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:梁川链接:https://www.zhihu.com/question/27606493/answer/37447829来源: ...
- CSS 高级语法
选择器的分组 你可以对选择器进行分组,这样,被分组的选择器就可以分享相同的声明.用逗号将需要分组的选择器分开.在下面的例子中,我们对所有的标题元素进行了分组.所有的标题元素都是绿色的. h1,h2,h ...
- Js操作DOM小练习_01
1.页面引入jQuery文件和bootstrap文件: 2.贴上代码 <!DOCTYPE html> <html lang="en"> <head&g ...
- ios中strong和weak的解释理解
来自stackoverflow解释的挺有意思的 Imagine our object is a dog, and that the dog wants to run away (be dealloca ...
- TCP/UDP的接收包方式
UDP udp不是流式的,每次接收一个包,长度不超过(65535-28,总包长65535字节,包头28字节).所以UDP方式下不需要填写任何参数直接调用 $client->recv() 即可.注 ...