2013-11-29 167 views
0

好吧,即時通過瀏覽器的後退按鈕導航到啓動頁面時,我的頁面的文本框中存在問題,其中包含登錄信息的值。我需要文本框來清除頁面加載時,但當我使用代碼即時通訊使用文本框保持等於「」,而不是用戶輸入時單擊登錄按鈕。繼承我的代碼。文本框清除問題

protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!Page.IsPostBack == true) 
     { 
      txtEmailLog.Text = ""; 
      txtPasswordLog.Text = ""; 
     } 
    } 



    protected void btnLogin_Click(object sender, EventArgs e) 
    { 
     PlayerModel plyrModel = new PlayerModel(); 
     PlayerBLO plyrBLO = new PlayerBLO(); 

     List<PlayerModel> models = plyrBLO.GetAllPlayers();    

     foreach (PlayerModel player in models) 
     { 
      if (txtEmailLog.Text == player.PlayerEmail && txtPasswordLog.Text == player.PlayerPassword) 
      { 

       Session.Add("Player", player); 

       Response.Redirect("PlayerMenu.aspx"); 

      } 

      else 
      { 
       lblMessage.Text = "Invalid Login! Retry or Register."; 
      } 
     } 
    }  

回答

-1

還有其他的方法,這是其中的一個

protected void btnLogin_Click(object sender, EventArgs e) 
{ 
    // rest of your code 
     txtEmailLog.Text = ""; 
     txtPasswordLog.Text = ""; 
} 
+0

我試過這個,它沒有改變任何東西。 – WhatItDoPikachu

+0

我在這個網站上的一篇文章中發現了這個解決方案,並在三天前嘗試過。 – WhatItDoPikachu

+0

這隻會更新ViewState中的值,因爲重定向導致ViewState不會再次輸出,所以無關緊要。 – SilverlightFox

2

當過你的頁面加載下面的腳本將run.Include腳本文件jQuery的1.4.1.js在即使您單擊瀏覽器後退按鈕,LogIn窗體也會起作用。

<script type="text/javascript" src="Scripts/jquery-1.4.1.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function() { 
     // clear the text box values onload. 
     $('#<%=txtEmailLog.ClientID%>').val(''); 
     $('#<%=txtPasswordLog.ClientID%>').val('') 
    }); 
</script> 
+0

仍然是同樣的問題,當我到達origianl頁面,我執行登錄我的登錄信息仍然在文本框中。 – WhatItDoPikachu

+0

檢查腳本** jquery-1.4.1.js **文件是否被加載。也看到路徑是正確的或不在我的例子中我保存**腳本**,你只是檢查你的結局。我測試它對我的工作很好 – VDN