spl*_*tto 20 javascript asp.net label code-behind
我在表单上有一系列文本框.当用户在这些文本框中插入数字时,会进行计算并<asp:Label>通过JavaScript更新控件以反映这些计算:
document.getElementById('<%=TotalLoans.ClientID %>').innerHTML = TotalLoans;
Run Code Online (Sandbox Code Playgroud)
这正确地更新了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);
Run Code Online (Sandbox Code Playgroud)
如何更新Text的特性<asp:Label>以这样的方式,我可以阅读代码隐藏属性通过JavaScript?
这是一个包含41个标签的大型表单上的一个小问题,每个标签显示用户的某些计算结果.根据FishBasketGordo的建议,我将我<asp:Label>转变为残疾人<asp:TextBox>.我正在设置新文本框的值:
document.getElementById('<%=TotalLoans.ClientID %>').value = TotalLoans;
Run Code Online (Sandbox Code Playgroud)
同样,在代码隐藏中,值TotalLoans.Text始终等于"".
我不介意改变我的方法,但这是问题的症结所在.
我正在使用JavaScript来操纵某些控件的属性值.当点击"提交"时,我需要能够从后面的代码中访问这些被操纵的值.
我有什么建议可以解决这个问题吗?
关于@James Johnson的回答,我无法.innerText按建议使用属性检索值.我已经EnableViewState设定为真的<asp:Label>.还有其他我想念的东西吗?
我不明白为什么,当我输入文本框并提交表单时,我可以访问代码隐藏中的值,但是当我以编程方式通过JavaScript更改文本框或标签的文本时,我无法访问新值.
Pan*_*kaj 16
<asp:HiddenField ID="hidden" runat="server" />
Run Code Online (Sandbox Code Playgroud)
protected String LabelProperty
{
get
{
return hidden.Value;
}
set
{
hidden.Value = value;
}
}
Run Code Online (Sandbox Code Playgroud)
<script>
function UpdateControl() {
document.getElementById('<%=hidden.ClientID %>').value = '12';
}
</script>
Run Code Online (Sandbox Code Playgroud)
现在,您可以直接访问该属性Postback.如果直接在后面的代码中使用,则Label控制更新值将会丢失PostBack.
这个适用于我的 asp 标签控件。
function changeEmaillbl() {
if (document.getElementById('<%=rbAgency.ClientID%>').checked = true) {
document.getElementById('<%=lblUsername.ClientID%>').innerHTML = 'Accredited No.:';
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
111685 次 |
| 最近记录: |