2012-03-18 142 views
0

不访问值我学习JavaScript和XHTML首次在此刻,我现在有我一直没能解决问题。我认为这是一个相当简单的解决方法,我只是不需要知识就能做到。这里是javascript以及我如何试图从xhtml调用它。Javascript语言,形式

这是所谓的greet.js JavaScript文件。

function tOD() { 
timeOfDay = new Date 
if (timeOfDay.getHours() < 5) { 
    alert("Either go to bed, or go back to bed " + document.form[0].inputname.value); 
} 
else if (timeOfDay.getHours() < 11) { 
    alert("Rise and shine " + document.form[0].inputname.value); 
} 
else if (timeOfDay.getHours() < 17) { 
    alert("Good afternoon " document.form[0].inputname.value); 
} 
else { 
    alert("And after a hard day at work you can relax at last, " + document.form[0].inputname.value); 
} 
} 

这里是我试图在我的xhtml中实现它的地方。

<script type="text/javascript" src="greet.js"></script> 
<FORM NAME = input> 
Please enter your name: 
<input type= "text" name = "inputName"/> 
<input Type= Button NAME= "greeting" VALUE="ok" onClick="greet()"/> 
</FORM> 

中,如果我拿走document.form JavaScript的作品[0] .inputname.value它会用一天的正确时间,当我按下按钮发出警报。所以它必须是document.form [0] .inputname.value,这一定是错误的,我只是不确定如何解决它。我一直在使用的元素[0],而不是形式,[0],并输入和元素[输入]也试过,所以我不知道它可能是什么...

感谢所有帮助表示赞赏。

回答

1

你有一些错误,我做了一个工作版本供您刚刚访问。请寒窗尝试看看你的错误并进行修复;)

你可以在这里看到:http://jsfiddle.net/3U5Qm/

+0

啊,非常感谢,这是非常有帮助的,我看到我的,现在出了问题。 – DanMc 2012-03-18 16:53:11

0
else if (timeOfDay.getHours() < 17) { 
    alert("Good afternoon " document.form[0].inputname.value); 

你缺少一个+号

else if (timeOfDay.getHours() < 17) { 
     alert("Good afternoon " + document.form[0].inputname.value); 
+0

也应该document.forms [0]不document.form [0] – gastonfartek 2012-03-18 15:38:07

2

你输入

<input type="text" name="inputName"/> 

是 “驼峰”,意在 '名称' 的N个是大写的。您正在使用您的JavaScript

document.forms[0].inputname.value 

inputname小写的name属性应为inputName。请注意,形式集合称为document.forms而不是document.form

除此之外,你可能想在你的输入使用一个ID,所以你可以使用它document.getElementById('inputid');

+0

非常感谢这个:) – DanMc 2012-03-18 16:54:08