HTML中的Javascript未执行

问题描述:

<html> 
<head> 
<title>Test Environment</title> 
</head> 
<body> 

<script> 
document.bgColor="#222222"; 
document.fgColor="#11EE11"; 

document.writeln("Test Environment."); 
document.writeln("Last Update: " + document.lastModified); 

var today = new Date(); 
var dd = today.getDate(); 
var mm = today.getMonth()+1; //January is 0! 
var yyyy = today.getFullYear(); 

if(dd<10) { 
    dd='0'+dd 
} 

if(mm<10) { 
    mm='0'+mm 
} 

today = dd+'/'+mm+'/'+yyyy; 


function enterExpenses(){ 
    var _desc = window.prompt("What kind of expenses?"); 
    var _amount = window.prompt("Amount spent?"); 
    var _entry = {type:_desc amount:_amount date:today}; 

    document.writeln(_entry.date); 
    document.writeln(_entry.type); 
    document.writeln(_entry.amount); 
} 


</script> 
<form> 
<button onclick="enterExpenses()">Click me</button> 
</form> 

</body> 
</html> 

我讨厌成为那个让别人去做我的工作的人,但我不明白为什么它不起作用。我试图学习javascipt,并且我已经完成了codecademy课程。现在我实际上正在尝试使用它并将其投入使用,我无法弄清楚为什么我的脚本没有执行。HTML中的Javascript未执行

任何人的专业知识我可以借一秒?

+0

什么部分不工作?可能有一些事情,例如'{type:_desc amount:_amount date:today}'应该是'{“type”:_desc,“amount”:_amount,“date”:today}' – atmd 2015-04-01 14:07:52

+0

您应该阅读关于如何使用浏览器的控制台来调试你的代码。 – j08691 2015-04-01 14:13:27

也许是因为在这一行

var _entry = {type:_desc amount:_amount date:today}; 

你应该用逗号

var _entry = {type:_desc, amount:_amount, date:today}; 

除了形式Muhammad's answer分离对象的属性,使用此为您的按钮一个错字:

<button type="button" onclick="enterExpenses()">Click me</button> 

未指定按钮的“类型”属性将使其成为提交按钮,将表单发送到表单的操作页面。

+0

谢谢你们,你们帮助我,但我遇到了一个新问题。无论我使用document.writeln还是在字符串中使用\ n,它都不会在下一行继续。怎么来的? 例如: 'document.writeln(_entry.amount + '\ n');' – 2015-04-01 14:34:47

+0

这可能是一个骗子,但...我用
... document.writeln(_entry.date + “
”) ; – 2015-04-01 14:39:38

+0

非常感谢,工作。是否有我不应该让JavaScript抛出HTML命令的原因? @ray – 2015-04-01 14:42:35