我再login 画面又一个submit按钮,输入完用户名和密码后就可以进入系统了,但我的系统又一个功能,就同一用户不能同时登陆进去,用户有时点击了2次submit 系统就会认为已经有用户登陆了.我怎样才能保证不管点击几次,我只提交一次呢??????谢谢各位大侠!
解决方案 »
- 请问<数据访问层>如何访问Web.config 呀?
- 高分求助:这样的形式如何实现,用repeater和datatable?
- 用session和viewstate保存自动生成的试题号和正确答案
- conn.close之后数据库要很长很长时间才可以关闭。
- 怎么才能保存对象?
- cookie的稀奇问题
- 关于函数调用??????
- Operation is not valid due to the current state of the object
- [散分]htm 页面 如何改变主题....急
- dropdownlist里面的OnSelectedIndexChanged事件是怎么触发的?
- 网站上传后RequiredFieldValidator/RegularExpressionValidator 无效,在线等~~谢谢了!
- xmlhttp请求本域文件失败这是为什么?
应该在按钮事件里,使用 viewstate 来控制。
大侠能具体一点吗?
<%@ Import Namespace="System.IO" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > <html>
<head>
<title>禁止刷新多次提交</title>
<meta name="CODE_LANGUAGE" Content="C#">
<meta name=vs_defaultClientScript content="JavaScript">
<meta name=vs_targetSchema content="http://schemas.microsoft.com/intellisense/ie5">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script runat="server" language="c#">
private void Page_Load(object sender, System.EventArgs e)
{
if( !IsPostBack )
{
if(ViewState["Submit"] == null) ViewState["Submit"] = 0;
}
}override protected void OnInit(EventArgs e)
{
InitializeComponent();
base.OnInit(e);
}private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
this.Button1.Click += new System.EventHandler(this.Button1_Click);
}private void Button1_Click(object sender, System.EventArgs e)
{
if( (int)ViewState["Submit"] > 0 ) return; // 第二次点击按钮,下面的代码不再执行。 ViewState["Submit"] = (int)ViewState["Submit"] + 1;
String log = Server.MapPath("Upload") + "\\1.txt";
this.WriteLine(log, TextBox1.Text + " " + DateTime.Now.ToString());
this.WriteLine(log, "ViewState[\"Submit\"]=" + ViewState["Submit"].ToString());
this.WriteLine(log, "");
}#region 写入日志 public void WriteLine( String logString )
/// <summary>
/// 写入日志
/// </summary>
public void WriteLine( String logFilePath, String logString )
{
using(StreamWriter sw = new StreamWriter(logFilePath, true, Encoding.GetEncoding("gb2312")))
{
sw.WriteLine( logString );
sw.Close();
}
}
#endregion
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<asp:TextBox id="TextBox1" runat="server"/><asp:Button id="Button1" runat="server" Text="Button"/>
</form>
</body>
</html>