c# - vb.net 中的 Asp 标签不捕获在 javascript 中修改的标签文本

标签 c# javascript asp.net vb.net code-behind

我在 vb.net 中有以下标签:

<div style="height: 20px; vertical-align: text-bottom;">
        <div style="float: left; width: 86%; text-align: right">
            <b>Sub-Total</b> (a) through (e) above:  
        </div>
        <div style="float: right; padding-right: 10px">
            <asp:Label runat="server" ID="lblRateableEmployeesSubtotal" CssClass="lblRateableEmployeesSubtotalCls" Text="0"></asp:Label>
        </div>
</div>

我正在通过 JavaScript 函数动态调整该值:

$('.lblRateableEmployeesSubtotalCls').text(numberWithCommas(subtotal));

只要某些文本框发生更改,就会调用此函数。 numberWithCommas 只是将文本格式化为数字格式 (x,xxx)。

当我尝试将这些值保存在代码隐藏中时,由于某种原因,标签的文本仍然显示为“0”!尽管屏幕上已经清楚地更新了。

If lblRateableEmployeesSubtotal.Text > "" Then .TotalEmployees = CInt(lblRateableEmployeesSubtotal.Text)

知道为什么会发生这种情况吗?

最佳答案

ASP 在执行回发时不会费心包含此信息,特别是因为标签的整个概念不是接受来自客户端的输入。回发时 ASP 不会发送整个 DOM;它只发送专门设计用于接受客户端输入的字段的信息。

在这种情况下,此处使用的适当工具是Hidden 控件。将 asp:HiddenField 控件添加到页面,在 JavaScript 代码中设置控件的值(当然,您也可以设置标签),然后检查服务器端的隐藏字段。

关于c# - vb.net 中的 Asp 标签不捕获在 javascript 中修改的标签文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25434328/

相关文章:

c# - 如何从此字符串中删除转义字符?

c# - 在我的 asp.net mvc 2 应用程序中,为什么有时会丢失通过 RedirectToAction 传递的参数?

javascript - 如何在 Protractor Cucumber 框架中使用断点进行调试

c# - 如何使用 C# 在 Dailymotion 上上传视频?有人有完整的代码吗?

c# - 在 C# 中从另一个窗体监听主窗体中的事件

c# - 将整数设置为 0 的整数扩展方法

javascript - (Javascript/jQuery) 以带有特定文本的 p 为目标的 div

javascript - 解析半结构化值

c# - WebClient UseDefaultCredentials 不适用于 ldap 身份验证

c# - 仅具有服务器端验证的 CustomValidator