2014-01-26 75 views
1

我想在我的項目中使用模糊事件。但它不起作用。這是我的代碼:如何使用C#模糊事件?

code c#: 
protected void xx() 
    { 
     TextBox2.Text = "zzzzzzzzzzzzzzzzzzz"; 
    } 

code design: 
<asp:TextBox ID="TextBox1" runat="server" onblur="xx"></asp:TextBox> 
<asp:TextBox ID="TextBox2" runat="server" ></asp:TextBox> 

有什麼不對?
順便說一下,我使用Visual Studio 2010

+1

onblur是客戶端(javascript)事件而不是服務器端事件。所以這不會工作 – KhanZeeshan

+0

@KhanZeeshan:我想製作一個頁面讓人們加入我的網站。所以我需要連接到數據庫來檢查用戶名不要重複 。還需要檢查兩個文本框中的密碼是否相同。 – Saman

+0

你必須在OnBlur事件中使用JQuery&ajax請求來完成你所需的功能。 – KhanZeeshan

回答

2
**aspx code:**  
<asp:TextBox ID="TextBox1" runat="server" onblur="validate();"></asp:TextBox> 
<asp:TextBox ID="TextBox2" runat="server" ></asp:TextBox> 

**javascript-code:**  
function validate() 
{ 
    var _textbox = $(this); 
    $.ajax({ 
    url: "your page url here"(index.aspx) + "?FuncName=ValidateUserid&text="+_textbox.val(), 
    context: document.body 
}).done(function() { 
    alert("you can do whatever you want here"); 
}); 
} 


**aspx.cs code (server-side)** 
protected void Page_Load() 
{ 
    if(Request.QueryString["FuncName"].Equal("ValidateUserid")) 
    { 
    string UserId = Request.QueryString["text"]; 
    //Put your database logic here. 
    } 
} 

不要忘記在你的ASPX頁面的HEAD部分的jQuery庫。

1

嘗試這樣

後面的代碼:

在頁面加載事件

txtAccountNumber.Attributes("onBlur") = "IsAccNumberValid(" & txtAccountNumber.ClientID & ")"; 

哪裏txtAccountNumber是TextBox的ID在標記頁中,您傳遞文本框的ClientID,因爲JavaScript是客戶端而不是服務器端。而現在在標記頁面(的.aspx)有這樣的JavaScript在頁面的頭部分:

<script type="text/javascript">      
function IsAccNumberValid(txtAccountNumber) {            
    if (txtAccountNumber.value.length < 6) {  
         alert(txtAccountNumber.value); 
      }  
     }  
</script> 
+0

我想製作一個頁面讓人們加入我的網站。所以我需要連接到數據庫檢查用戶名不重複。還需要檢查兩個文本框中的密碼是否相同 – Saman