在后面的代码中读取标签值

时间:2013-03-05 06:43:45

标签: c# asp.net

使用以下代码使用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 "";

1 个答案:

答案 0 :(得分: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