qq_學吥會啲堅強_0
2016-09-08 10:12
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="UTF-8">
<script>
var date = new Date();
var hh=date.getHours();
if(hh<10) hh='0'+hh;
var mm=date.getMinutes();
if(mm<10) mm='0'+mm;
var yy=date.getSeconds();
if(yy<10) yy='0'+yy;
var time=hh+":"+mm+":"+yy;
document.getElementById("input").value=time;
</script>
</head>
<body>
<input type="text" id="input" />
</body>
</html>
你这个代码有几处错误:
1、你的if语句后面缺了{};
2、getHours/Minutes/Seconds返回值是数值,不能和"0"/":"这类的字符串直接相加。
建议你重新写过这段代码,至于你希望输出“11:02:03”这样的时间格式,我不知道~
哈哈哈哈,加油~
很有可能是js文件中调用了html中的某个节点,并且js在这个调用的对象之前加载了。
如果js放在头部时,此时浏览器渲染未进入dom节点,因为提示为空,或者找不到。
所以把js代码放到最后或调用的对象后面就行了。
文档加载问题;文档加载是按顺序的,于是加载到document.getElementById("input").value=time;这句时,<input type="text" id="input" />这句还没加载出来,又怎么可以让document.getElementById("input").value=time;调用呢?如果要实现,就将<script>……</script>这段放在<input>后面即可。
JavaScript进阶篇
468061 学习 · 21891 问题
相似问题