ASP.NET之零碎备忘
1. 重复提交问题
摘自http://hi.baidu.com/andyzrh/blog/item/0c7e50b566a68dc836d3cafc.html
Code
//sb保存的是JavaScript脚本代码,点击提交按钮时执行该脚本
StringBuilder sb = new StringBuilder();
//保证验证函数的执行
sb.Append("if (typeof(Page_ClientValidate) == 'function') { if (Page_ClientValidate() == false) { return false; }};");
//点击提交按钮后设置Button的disable属性防止用户再次点击,注意这里的this是JavaScript代码
sb.Append("this.disabled = true;");
//用__doPostBack来提交,保证按钮的服务器端click事件执行
sb.Append(Me.ClientScript.GetPostBackEventReference(this.btnSubmit, ""));
sb.Append(";");
//SetUIStyle()是JavaScript函数,点击提交按钮后执行,如可以显示动画效果提示后台处理进度
//注意SetUIStyle()定义在aspx页面中
sb.Append("SetUIStyle();");
//给提交按钮增加OnClick属性
this.btnSubmit.Attributes.Add("onclick", sb.ToString());
//sb保存的是JavaScript脚本代码,点击提交按钮时执行该脚本
StringBuilder sb = new StringBuilder();
//保证验证函数的执行
sb.Append("if (typeof(Page_ClientValidate) == 'function') { if (Page_ClientValidate() == false) { return false; }};");
//点击提交按钮后设置Button的disable属性防止用户再次点击,注意这里的this是JavaScript代码
sb.Append("this.disabled = true;");
//用__doPostBack来提交,保证按钮的服务器端click事件执行
sb.Append(Me.ClientScript.GetPostBackEventReference(this.btnSubmit, ""));
sb.Append(";");
//SetUIStyle()是JavaScript函数,点击提交按钮后执行,如可以显示动画效果提示后台处理进度
//注意SetUIStyle()定义在aspx页面中
sb.Append("SetUIStyle();");
//给提交按钮增加OnClick属性
this.btnSubmit.Attributes.Add("onclick", sb.ToString());
2.题目的区别
本来是考察.cctor初始化顺序问题,结果没有看清题目,唉
题目一
namespace ConsoleApplication1
{
class Program
{
class A
{
public static int X;
static A()
{
X = B.Y + 1;
}
}
class B
{
public static int Y ;
static B() {
Y = A.X + 1;
}
static void Main()
{
Console.WriteLine("X={0},Y={1}", A.X, B.Y);
}
}
}
}
namespace ConsoleApplication1
{
class Program
{
class A
{
public static int X;
static A()
{
X = B.Y + 1;
}
}
class B
{
public static int Y ;
static B() {
Y = A.X + 1;
}
static void Main()
{
Console.WriteLine("X={0},Y={1}", A.X, B.Y);
}
}
}
}
题目二
namespace ConsoleApplication1
{
class Program
{
class A
{
public static int X;
static A()
{
X = B.Y + 1;
}
}
class B
{
public static int Y ;
static B() {
Y = A.X + 1;
}
}
static void Main()
{
Console.WriteLine("X={0},Y={1}", A.X, B.Y);
}
}
}
namespace ConsoleApplication1
{
class Program
{
class A
{
public static int X;
static A()
{
X = B.Y + 1;
}
}
class B
{
public static int Y ;
static B() {
Y = A.X + 1;
}
}
static void Main()
{
Console.WriteLine("X={0},Y={1}", A.X, B.Y);
}
}
}