2013-03-05 71 views
1

正在使用以下代碼使用javascript分配標籤文本。它運作良好。但是我無法閱讀後面代碼中的標籤文本。請幫我解決這個問題。在代碼後面讀取標籤值

Javascript: 
========== 

var lbl_total = document.getElementById('<%= lbl_total.ClientID %>'); 
lbl_total.innerHTML = '500'; 

c# code behid : 
=============== 

string total = lbl_total.Text; //It always return ""; 
+0

你射擊導致 「郵報」 的事件嗎? – Silagy 2013-03-05 06:45:28

+0

你不能這樣使用。你將不得不使用一些其他的控件,比如'hidden field'。 – 2013-03-05 07:43:09

+0

是你的工作? – 2013-03-25 14:04:08

回答

0

標籤的客戶端更改不會反映到服務器端,因爲其數據未發佈到服務器。因此,解決方案是採用輸入隱藏控件,並使用標籤的更新值設置其值。下面是示例代碼:

<script type="text/javascript"> 
     $(document).ready(function() { 
      var total = 0; 
      $('#Button1').click(function() { 
       total += 150; 
       $("span[id$=lbl_TotalCount]").html(total); 
       $("input:hidden[id$=MyHidden]").val(total); 
      }); 
     });     
    </script> 

HTML

<form id="form1" runat="server"> 
    <div> 
     <input id="Button1" type="button" value="button" /> 
     <asp:Button ID="btn_saveForm" runat="server" Text="save" CssClass="btnForm" OnClick="btn_saveForm_Click" /> 
     <asp:Label ID="lbl_TotalCount" Style="color: #00e4ff; font-family: Arial; font-weight: bold; 
      text-decoration: underline" runat="server" Text="0"> 
     </asp:Label> 
     <asp:HiddenField ID="MyHidden" runat="server" /> 
     <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
    </div> 
    </form> 

爲文章全文:Get label value in code behind whose text is changed via JavaScript/jQuery