顯示具有 C# 標籤的文章。 顯示所有文章
顯示具有 C# 標籤的文章。 顯示所有文章

2013年2月2日 星期六

Web 控制項 避免重複觸發 Button



1.
屬性中 OnClientClick 設定 disabled=true;this.form1.submit();
UseSubmitBehavious=false,將產生下列的_doPostBack











執行結果


2.或者可以在Code Behind 程式碼中加上


/* Sensor 代表觸動事件來源物件,e為傳遞給該事件的額外描述
在畫面上的點選動作,可用e來擷取

*/
 protected void Button1_Click(object sender, EventArgs e)
    {
        Button1.Enabled = false;
    }


ASP .NET Web 控制項(TextView)



在工具列拉一個TextBox 的控制元件,放到HTML 中








修改屬性中的AutoPostBack 設為true,當滑鼠移到其他控制項時,會自動執行送出的動作。




選擇屬性中的事件(閃電符號),選取TextChanged 事件 TextBox1_TextChange



TextBox.aspx






<%@ Page Language="C#" AutoEventWireup="true" CodeFile="TextBox.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <!-- 控制項一定要放在FORM 內
    
    -->
    <form id="form1" runat="server">
    <div>
    
       欄位1: 
        <asp:TextBox ID="TextBox1" runat="server" 
        AutoPostBack="True" ontextchanged="TextBox1_TextChanged" 
            ></asp:TextBox>
            <!-- 設定AutoPostBack="True",當滑鼠移到其他控制項時,
            會自動執行送出的動作
            -->
        <br />
       欄位2: <asp:TextBox ID="TextBox2" runat="server" 
            ontextchanged="TextBox2_TextChanged1"></asp:TextBox>
    
    </div>
    </form>
</body>
</html>



=================================================================
後置程式碼的部分


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
    //ASP.NET 程式中最早被執行的 
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Write("Page_Load");
    }
    protected void TextBox2_TextChanged(object sender, EventArgs e)
    {

    }
    protected void TextBox1_TextChanged(object sender, EventArgs e)
    {
        Response.Write("TextChanged 被觸發");
    }
    protected void TextBox2_TextChanged1(object sender, EventArgs e)
    {

    }
}



執行結果

Key 上aaa 滑鼠移到其他地方時