aspx小集合
1.注意GroupName
<asp:RadioButton ID="rdoF" runat="server" Text="男" Checked="true"
GroupName="sex" />
<asp:RadioButton ID="rdoM"
runat="server" Text="女" GroupName="sex" />
2.SqlTransaction
conn = new SqlConnection(SqlConn);
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
SqlTransaction tran = null;
//根据EmpID判断是否是修改操作还是新建操作
if (EmpID == "")
{
try
{
conn.Open();
//添加数据库事务
tran = conn.BeginTransaction();
// 绑定事务
cmd.Transaction = tran;
string strSqlText = "insert into dbo.Employee values('" + txtName.Text + "','" + rdoF.Checked + "','" + DateTime.Parse(txtBirth.Value) + "'," + int.Parse(ddlC.SelectedValue) + ",'" + txtAddress.Text + "','" + txtEmail.Text + "','" + txtRemark.Text + "')";
cmd.CommandText = strSqlText;
cmd.CommandType = CommandType.Text;
//提交人员注册的信息
int i = cmd.ExecuteNonQuery();
//获取新增的人员id
cmd.CommandText = "select E_Id from dbo.Employee where E_Name='" + txtName.Text + "' and E_Brith='" + txtBirth.Value + "' and E_Address='" + txtAddress.Text + "'";
SqlDataReader sr = cmd.ExecuteReader();
//新增的人员id
int E_ID = 0;
while (sr.Read())
{
E_ID = sr.GetInt32(0);
}
sr.Close();
//新增人员登录的账号和密码
cmd.CommandText = "insert into dbo.Emp_Submit values(" + E_ID + ",'" + txtAccount.Text + "','" + txtPwd1.Text + "')";
i += cmd.ExecuteNonQuery();
//提交事务
tran.Commit();
if (i > 1)
{
//成功后的提示信息
Response.Write("<script>alert('注册成功," + txtName.Text + "欢迎进入本站!')</script>");
txtNull();
lblNull();
}
else
{
Response.Write("<script>alert('注册失败!')</script>");
}
}
catch (Exception ex)
{
//回滚事务
tran.Rollback();
Response.Write("<script>alert('" + ex.Message + "')</script>");
}
finally
{
conn.Close();
}
3.
因为与服务器组件进行交互的所有处理必须在服务器上发生,这意味着对于要求处理的每一操作而言,必须将该窗体发送到服务器、进行处理、然后返回到浏览器。
5.
if((img.fileSize/1024)>500)
{
alert("你选择的第"+(i+1)+"个图片过大,必须在500kb以内!");return false;
}
6.批量上传
HttpFileCollection hfc = this.Request.Files;
for (int i = 0; i < hfc.Count; i++)
{
//Response.Write("<script>alert('" + hfc[i].FileName + "')</script>");
string fileUrl = hfc[i].FileName;
if (fileUrl == "")
{
continue;
}
//截取最后从双斜杠开始到结束的字符创(截取文件名称和后缀)
fileUrl = fileUrl.Substring(fileUrl.LastIndexOf("\\") + 1);
//服务器保存的路径
fileUrl = this.MapPath("userUpLoad\\") + fileUrl;
//小文件上传
hfc[i].SaveAs(fileUrl);
}
Response.Write("<script>alert('批量上传成功!')</script>");
7.
文本框不能为空验证
<tr>
<td class="style1">姓名:</td>
<td class="style1">
<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
</td>
<td class="style1">
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
ControlToValidate="txtName" ErrorMessage="姓名不能为空" Display="None"></asp:RequiredFieldValidator>
</td>
</tr>
比较验证,比如密码
<tr>
<td>密码:</td>
<td>
<asp:TextBox ID="txtPwd1" runat="server" TextMode="Password"></asp:TextBox>
</td>
<td></td>
</tr>
<tr>
<td>确认密码:</td>
<td>
<asp:TextBox ID="txtPwd2" runat="server" TextMode="Password"></asp:TextBox>
</td>
<td>
<asp:CompareValidator ID="CompareValidator1" runat="server"
ControlToCompare="txtPwd1" ControlToValidate="txtPwd2"
ErrorMessage="密码与确认密码不一致!"></asp:CompareValidator>
</td>
</tr>
出生日期不得低于某个固定日期
<tr>
<td class="style1">出生日期:</td>
<td class="style1">
<asp:TextBox ID="txtBirth" runat="server"></asp:TextBox>
</td>
<td class="style1">
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server"
ControlToValidate="txtBirth" Display="None" ErrorMessage="出生日期不能为空!"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CompareValidator2" runat="server"
ControlToValidate="txtBirth" ErrorMessage="出生日期不匹配!" Operator="LessThanEqual"
Type="Date" ValueToCompare="2012-11-15"></asp:CompareValidator>
</td>
</tr>
输入的必须是整数
<tr>
<td>工作年限:</td>
<td>
<asp:TextBox ID="TextBox2" runat="server">0</asp:TextBox>
</td>
<td>
<asp:CompareValidator ID="CompareValidator3" runat="server"
ControlToValidate="TextBox2" ErrorMessage="输入的值必须是数字" Operator="DataTypeCheck"
Type="Integer"></asp:CompareValidator>
</td>
</tr>
数值必须处于某个范围内
<tr>
<td class="style1">账号:</td>
<td class="style1">
<asp:TextBox ID="txtAccount" runat="server"></asp:TextBox>
</td>
<td class="style1">
<asp:RangeValidator ID="RangeValidator1" runat="server"
ControlToValidate="txtAccount" ErrorMessage="必须是在1000到10000之间的数字"
MaximumValue="10000" MinimumValue="1000" Type="Integer"></asp:RangeValidator>
</td></tr>
验证电子邮箱的格式是否正确
<tr>
<td class="style1">电子邮件:</td>
<td class="style1">
<asp:TextBox ID="txtEmail" runat="server"></asp:TextBox>
</td>
<td class="style1">
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server"
ControlToValidate="txtEmail" ErrorMessage="电子邮件的值不匹配!"
ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator>
</td>
</tr>
该控件收集本页的所有验证错误信息,并可以将它们组织以后再显示出来
<tr>
<td colspan="2">
<asp:ValidationSummary ID="ValidationSummary1" runat="server"
DisplayMode="List" />
</td>
<td> </td>
</tr>
CustomValidator(自定义验证)控件
<td>
<asp:CustomValidator ID="CustomValidator1" runat="server"
ControlToValidate="TextBox3" ErrorMessage="验证码不正确!"
onservervalidate="CustomValidator1_ServerValidate"></asp:CustomValidator>
</td>
protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
{
if (TextBox3.Text == "1234")
{
args.IsValid = true;
}
else
{
args.IsValid = false;
}
}
args.IsValid 为ture则不报错,若false则报ErrorMessage="验证码不正确!"
验证控件请参考 http://www.51cto.com/specbook/14/3305.htm
aspx小集合的更多相关文章
- 【转】HTML5的小知识点小集合
html5的小知识点小集合 html5知识 1. Doctype作用?标准模式与兼容模式各有什么区别? (1).<!DOCTYPE>声明位于位于HTML文档中的第一行,处于<h ...
- html5的小知识点小集合
html5的小知识点小集合 html5知识 1. Doctype作用?标准模式与兼容模式各有什么区别? (1).<!DOCTYPE>声明位于位于HTML文档中的第一行,处于< ...
- Ubuntu常用软件安装(小集合)
跨平台系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#linux Linux包系列的知识:https://www.cnblogs.com/dun ...
- Java-大集合拆分为指定大小的小集合
因为Oracle数据的in 最大允许1000 ,超过就会报错, 所以需要将集合拆分为多个集合进行处理. /** * 拆分集合 * @param <T> * @param resList 要 ...
- 我为Net狂 ~ 社交平台系列小集合!
微信平台: 我为Net狂(dotNetCrazy) 资源贴吧: http://tieba.baidu.com/f?kw=毒逆天 个人博客: http://dunitian.cnblogs.com/ h ...
- SVN代码冲突解决方案小集合
对于刚接触svn的人来说,svn冲突后,不能提交是件让人很郁闷的事情.最让人郁闷的事,是代码间的覆盖.你把我代码盖了,我会很火大的.谁把谁的盖了都不爽. 为什么会出现代码冲突问题呢,因为不同的人,同时 ...
- Mysql监控工具小集合
介绍一些常见的Mysql监控工具. Cacti Cacti是 一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具.它通过snmpget来获取数据,使用 RRDtool绘 ...
- NSStirng、NSArray、以及枚举(Method小集合)
Object-c代码 /**************************************************************************************** ...
- 佩特来项目经验小集合(2)___组合查询存储过程,报错 "varchar JBID='' 转换成数据类型 int 时失败"
今天写一个组合查询的存储过程遇到这样一个问题:在将 varchar 值 'SELECT * FROM View_DLS_WXJD_Customer WHERE 1=1 and JBID ='' ...
随机推荐
- Linux下umask的缺省默认权限
Linux有缺省默认文件.文件夹权限umask.默认 777 -xxx(文件夹) 666 - xxx(文件) 11.查看当前用户umask R(4)--W(2)--X(1) [root@mvpban ...
- office-word去掉效验红色的波浪线
工作中,总是能发现不足.能再次学习到知识和经验!
- java多线程(三)之售票案例
售票案例: 火车站3个窗口售100张票. 1.自定义类SellTicket.java package com.test.com.pers.thread; /** * Created by yadong ...
- C# partial 关键字详解
我们新建一个Windows Form时,后台代码都会自动添加如下代码: public partial class Form1 : Form { public Form1() { InitializeC ...
- Objective-C学习笔记(四)——OC实现最简单的数学运算
本篇帖子会实现使用OC的最简单的加减乘除运算.学习的知识点包含变量定义.运算方法,格式化输出等概念.主要学习主要的语法,事实上和C语言的语法还是比較相似的. 具体代码仅仅要写在main方法中即可了.具 ...
- C语言中续行符“\”说明
把一个预处理指示写成多行要用“\”续行,因为根据定义,一条预处理指示只能由一个逻辑代码行组成. 而把C代码写成多行则不必使用续行符,因为换行在C代码中只不过是一种空白字符,在做语法解析时所有空白字符都 ...
- ps液化
ps液化画笔工具属性 画笔大小:顾名思义画笔大小.液化处理范围 画笔密度:推动画笔时扭曲效果范围.以圆心为出发点,随密度增大扭曲影响范围越大(圆半径大小),达到最大值时圆圈内像素都会发生扭曲.好比真实 ...
- Java 并发多线程处理优秀博文整理
多线程(11)-Fork/Join-Java并行计算框架 推荐理由:Java在JDK7之后加入了并行计算的框架Fork/Join,本文是对其讲解 分解和合并:Java 也擅长轻松的并行编程! 推荐理由 ...
- 飘逸的python - 几行代码实现unix管道风格的函数调用
用过linux的基本知道它的管道,是将一个程序或命令的输出作为还有一个程序或命令的输入. 废话少说,以下我们看用python怎么实现unix管道风格的函数调用. #coding=utf-8 class ...
- sudo和man的tab自动补全
要加入sudo和man的tab自动补全功能,只需在~/.bashrc中加入: #Enabling tab-completioncomplete -cf sudocomplete -cf man