2013-02-01 88 views
1

我使用以下通过JavaScript变量的HTML显示

var loan = parseFloat(document.getElementById("loanamount")); 

document.getElementById('numpay').textContent = loan.toString(); 

和我的HTML是这样的:

<p>Number of Payments: <a id="numpay"> </a> </p> 

我觉得这应该是工作,但似乎无法得到比其他任何东西NaN在我的HTML中,不管我如何配置它。我知道我是JavaScript的新手,但你能给我一个小费?

谢谢!

+3

什么是id为'loanamount'的标签? – cha0site

+2

你为什么要解析一个浮点数然后把它串化? – Mathletics

+0

只是好奇,但我会想象你正在拉回的值是一个字符串,因为你正在用'parseFloat'解析它。然后在下一行中调用'.toString()'。似乎有点反作用。 – War10ck

回答

1

你需要parseFloat(document.getElementById("loanamount").value)最有可能

提示:相反parseFloat的,只是使用+从字符串转换为数字。所以+document.getElementById("loanamount").value也应该为你的目的。

+1

这是一个非常完整的答案,因此我接受它,谢谢! – ljrh

1
​​
+0

这解决了我的问题,我会更加关注javascripts .value,谢谢。 – ljrh

0

如果你没有做任何事情与loan则只是这样做:

document.getElementById('numpay').textContent = document.getElementById("loanamount").value 
0

如果id为loanamount元素是你需要.getElementById(“loanamount”)值的输入。如果它是跨度或div,那么.getElementById(“loanamount”)。innerHTML。用于回写相同的申请。

但是在任何一种情况下,你都不能在写入时使用.toString()。parseFloat()会给你一个没有方法的数字。 JavaScript与Java不太相似。

0
var loan = parseFloat(document.getElementById("loanamount").value); 

    document.getElementById('numpay').innerHTML = loan.toFixed(2);