gpt4 book ai didi

javascript - 设置asp :label in Javascript PROPER way的Text属性

转载 作者:行者123 更新时间:2023-12-03 12:14:12 24 4
gpt4 key购买 nike

我在表单上有一系列文本框。当用户在这些文本框中插入数字时,会进行计算并<asp:Label>控件通过 JavaScript 更新以反射(reflect)这些计算:

document.getElementById('<%=TotalLoans.ClientID %>').innerHTML = TotalLoans;

这会正确更新 UI。但是,当我尝试访问代码隐藏中的值时, Text属性为空。我想这是有道理的,因为我正在更新 innerHTML通过 JavaScript 属性。
//TotalLoans.Text will always be equal to "" in this scenario
double bTotalLoans = string.IsNullOrEmpty(TotalLoans.Text)
? 0.00
: Convert.ToDouble(TotalLoans.Text);

如何更新 Text <asp:Label> 的属性(property)通过 JavaScript 以我可以读取代码隐藏中的属性的方式?

更新

这是包含 41 个标签的大型表单上的一个小问题,每个标签都为用户显示一些计算的结果。接受 FishBasketGordo 的建议,我转换了我的 <asp:Label>给残疾人 <asp:TextBox> .我正在设置新文本框的值,如下所示:
    document.getElementById('<%=TotalLoans.ClientID %>').value = TotalLoans;

同样,在代码隐藏中, TotalLoans.Text 的值总是等于“”。

我不介意改变我的处理方式,但这就是问题的症结所在。

我正在使用 JavaScript 来操作某些控件的属性值。单击“提交”时,我需要能够从后面的代码中访问这些操作值。

有什么建议我该怎么做?

更新 2

关于@James Johnson 的回答,我无法使用 .innerText 检索值建议的属性(property)。我有 EnableViewState<asp:Label> 上设置为 true .还有什么我想念的吗?

我不明白为什么,当我输入文本框并提交表单时,我可以访问代码隐藏中的值,但是当我通过 JavaScript 以编程方式更改文本框或标签的文本时,我无法访问新值.

最佳答案

将 HiddenField 控件放置在您的表单中。

<asp:HiddenField ID="hidden" runat="server" />

在表单中创建属性
protected String LabelProperty
{
get
{
return hidden.Value;
}
set
{
hidden.Value = value;
}
}

从 JavaScript 更新隐藏字段值
<script>
function UpdateControl() {
document.getElementById('<%=hidden.ClientID %>').value = '12';
}
</script>

现在您可以通过 Postback 直接访问该属性(property)。 . Label控制更新值将在 PostBack 中丢失以防它直接在后面的代码中使用。

关于javascript - 设置asp :label in Javascript PROPER way的Text属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10128530/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com