2012-10-14 4 views
-1

ID를 클릭하면 레이블이 표시되고 (숨김으로 표시) 단추의 텍스트가 변경되어 해당 단추를 다시 클릭하여 해당 단추를 표시 할 수 있습니다. 원래의 텍스트를 숨기고 레이블을 숨길 수 있습니다. "ASP.NET C# 단추를 클릭 할 때 텍스트를 숨기거나 표시하는 방법

public partial class TestClick : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!Page.IsPostBack) 
     { 

      btnShowButtonText.Text = "Button"; 
      lblShowText.Visible = false; 

     } 
    } 
    protected void btnShowButtonText_Click(object sender, EventArgs e) 
    { 
     if (!Session.IsNewSession) 
     { 
      btnShowButtonText.Text = "Hide gift voucher details"; 
      lblShowText.Visible = true; 
     } 
    }  
+1

그리고 문제는 무엇입니까? 너 뭐 해봤 니? – MarioDS

+1

이 문제를 다시 생각해 보면이 서버 측을 수행하는 것이 매우 바람직하지 않다고 생각합니다. 이것은 클라이언트 측 기능이어야합니다. – MarioDS

답변

0

하나의 개수 변수를 사용할 수 있습니다. 이 같은 : 당신이 처음 클릭 할 때

static int cnt=0; 
    protected void btnShowButtonText_Click(object sender, EventArgs e) 
     { 
    cnt++; 
      if (cnt%2!=0) 
      { 
       btnShowButtonText.Text = "Hide gift voucher details"; 
       lblShowText.Visible = true; 
      } 
    if (cnt%2==0) 
      { 

       btnShowButtonText.Text = "Button"; 
       lblShowText.Visible = false; 

      } 
     } 

, 버튼 텍스트는 "숨기기 상품권보기 '
다음 버튼 텍스트가"버튼 "

+0

카운트 변수는 정적이어야합니다. 그렇지 않으면 ASP.NET과 클라이언트와 서버 간의 왕복으로 인해 값이 손실됩니다. – Kai

+0

@Kai : 예, 업데이트되었습니다. –

+0

아마도 솔루션이 작동하는 것 외에도 클라이언트 쪽 기능입니다. 어떻게하면 레이블을 숨기거나 표시하려고하는지 수백 명의 동시 사용자가 서버에 어떻게 반응하는지보십시오 ... – MarioDS

0

당신의 상태를 결정하기에 HiddenField를 사용할 수 있습니다입니다 버튼 및 텍스트 :

public partial class TestClick : System.Web.UI.Page 
    { 
    protected void Page_Load(object sender, EventArgs e) 
    { 
    if (!Page.IsPostBack) 
    { 

     btnShowButtonText.Text = "Button"; 
     lblShowText.Visible = false; 
    } 
    } 

protected void btnShowButtonText_Click(object sender, EventArgs e) 
{ 
    if(hiddenField.Value == "0") 
    { 
     btnShowButtonText.Text = "Hide gift voucher details"; 
     lblShowText.Visible = true; 
     hiddenField.Value = "1"; 
    } 
    else 
    { 
     btnShowButtonText.Text = "Button"; 
     lblShowText.Visible = false; 
     hiddenField.Value = "0"; 
    } 
} 
관련 문제