2014-10-29 36 views
0

我是新來的,學習asp.net和javascript。javascript to asp.net ClientIDMode

這可能是一個愚蠢的問題,因爲我想檢查如何使用javascript在asp.net上工作。

該按鈕僅爲客戶端調用OnClientClick,我希望javascipt更改asp.net上的標籤。 當它按下按鈕時,它似乎會改變,但它會回到原來的標籤。

有沒有辦法讓JavaScript的靜態標籤值?

在此先感謝。

<script type="text/javascript"> 
 
function calledFn() 
 
{ 
 
document.getElementById('<%=Label1.ClientID%>').innerHTML = document.getElementById('<%=TextBox1.ClientID%>').value; 
 
document.getElementById('<%=Label2.ClientID%>').innerHTML = document.getElementById('<%=TextBox2.ClientID%>').value; 
 
document.getElementById('<%=Label3.ClientID%>').innerHTML = document.getElementById('<%=TextBox3.ClientID%>').value; 
 
document.getElementById('<%=Label4.ClientID%>').innerHTML = document.getElementById('<%=TextBox4.ClientID%>').value; 
 
} 
 
</script>

<body> 
 
<form id="form1" runat="server"> 
 

 
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
 
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox> 
 
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox> 
 
<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox> 
 
<br /><br /> 
 
<asp:Button ID="Button1" runat="server" Text="Run JavaScript Code" OnClientClick="calledFn()"/> 
 
<br /><br /> 
 

 
<asp:Label ClientIDMode="Static" ID="Label1" runat="server">t111</asp:Label> 
 
<asp:Label ClientIDMode="Static" ID="Label2" runat="server">t222</asp:Label> 
 
<asp:Label ClientIDMode="Static" ID="Label3" runat="server">t333</asp:Label> 
 
<asp:Label ClientIDMode="Static" ID="Label4" runat="server">t444</asp:Label> 
 

 
</form> 
 
</body>

+0

湯姆'你看這個網站[MSDN Control.ClientIdMode屬性] tom'(HTTP:// msdn.microsoft.com/en-us/library/system.web.ui.control.clientidmode(v=vs.110).aspx) – MethodMan 2014-10-29 22:39:56

+0

@DJKRAZE - 我敢打賭,他希望客戶端標籤文本chamge通過回傳。 – Igor 2014-10-29 22:58:25

+0

感謝您的回覆,但我不是很好的asp.net和javascipt。但如果我想這樣,是否有另一種方法從JavaScript傳遞到asp.net? – 2014-10-30 00:31:24

回答

1

您的JavaScript更改將不會被保存。

你必須使用會話視圖狀態,或隱藏字段,用於臨時存儲的變化,然後重新綁定他們的頁面加載