我有一个看起来像这样的JavaScript函数:
function recalculateWhatIfCurrentRate(aEle, aChangedLabel, recordID, yearEndCurrentRate) {
var rate = document.getElementById(aEle).value;
document.getElementById(aChangedLabel).value = yearEndCurrentRate * (1 + rate);
}
aEle = ctl00_cpMain_tbCurrentRatePercentIncrease_131578
aChangedLabel = ctl00_cpMain_lblScrollCurrentRate_131578
recordId = 131578
yearEndCurrentRate = 100.65
我想更改aChangedLabel
的实际文字。
为什么不在DOM中改变?
答案 0 :(得分:2)
<label>
元素没有value
属性,它们是标准容器元素。他们的文本内容将在他们的孩子(或后代)中表示为TextNodes。
答案 1 :(得分:1)
标签标签没有值属性,您需要设置innerHTML来更改文本。
答案 2 :(得分:0)
默认情况下,从DOM中取出的值为字符串。这可能在计算中失败了,因为你不能用字符串做数学。
尝试将值转换为数字:
var rate = parseFloat(document.getElementById(aEle).value);