似乎无法找到问题。每次运行它时,我都会得到NaN的ageDale
,一直在看它一会儿,它可能很简单,但我很感谢帮助!Javascript简单代码错误
<p>Enter names in the fields, then click "Submit" to submit the form:</p>
<form name="form">
<input type="text" id="birthDate">
Current Date
<input type="text" id="currentDate">
<a id="Submit_Button" onclick="test();" href="javascript:void(0);" title="Submit">Submit</a>
</form>
<script>
function test() {
var birthDate = document.getElementById("birthDate");
var currentDate = document.getElementById("currentDate");
var ageDate = (birthDate.value - currentDate.value);
if(ageDate.value < 1) {
(ageDale = ageDate.value * -1)
}
else {
(ageDale = ageDate.value * 1)
}
alert(ageDale)
}
</script>
另外,是否有必要有这样的声明?还是有另一种方式来设置它,因此它不需要?
拼错变量名。尝试'ageDate'而不是'ageDale'。 – orange 2014-12-11 01:14:54
你没有说明代码应该做什么,但你的NaN来自两个字符串使用减法运算符'(birthDate.value - currentDate.value)' – styfle 2014-12-11 01:15:55
@styfle JS使用算术时将字符串转换为数字功能。 – Barmar 2014-12-11 01:16:18