这段倒计时的代码哪里错了

beautiful_melody 2011-12-08 10:53:50
这是一个用户控件 该控件显示倒计时
问题是文本框里没显示任何东西
同时我不懂javascript 看似再显示以秒的计时 并没有倒计时
我想设置一个分钟数 例如我设置“1” 则该控件就开始从60秒开始倒记
我设置“2” 则该控件就从120秒开始倒记
...全文
95 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
风2013 2011-12-08
  • 打赏
  • 举报
回复
myfun() 这个方法你只是定义了 根本就没有执行过,文本框里怎么可能显示东西

document.myclock.value这个写法也是错误的
瀚娃娃 2011-12-08
  • 打赏
  • 举报
回复

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>无标题页</title>
</head>
<body>
<input type="text" id="txt"/><input type="button" id="btn" value="daojishi" onclick="myfunc()"/>
<script type="text/javascript">
var m=0;
var s=0;
function myfunc(){
m=document.getElementById("txt").value;
s=60*m;
daojishi();
}
function daojishi(){
if(s==0){
//计时完毕
document.getElementById("btn").disabled=false;
document.getElementById("btn").value="计时完毕";
}
else{
s=s-1;
document.getElementById("btn").value=s;
document.getElementById("btn").disabled=true;
window.setTimeout("daojishi()",1000);
}
}

</script>
</body>
</html>

小伙写代码 2011-12-08
  • 打赏
  • 举报
回复
设置剩余时间SPAN中的数字即可~

剩余时间:<span id="endtime">100</span>
<script type="text/javascript">
var CID = "endtime";
if (window.CID != null) {
var iTime = document.getElementById(CID).innerText;
var Account;
RemainTime();
}
function RemainTime() {
var iDay, iHour, iMinute, iSecond;
var sDay = "", sHour = "", sMinute = "", sSecond = "", sTime = "";
if (iTime >= 0) {
iDay = parseInt(iTime / 24 / 3600);
if (iDay > 0) {
sDay = iDay + "天";
}
iHour = parseInt((iTime / 3600) % 24);
if (iHour > 0) {
sHour = iHour + "小时";
}
iMinute = parseInt((iTime / 60) % 60);
if (iMinute > 0) {
sMinute = iMinute + "分钟";
}
iSecond = parseInt(iTime % 60);
if (iSecond >= 0) {
sSecond = iSecond + "秒";
}
if ((sDay == "") && (sHour == "")) {
sTime = "<span style='color:darkorange'>" + sMinute + sSecond + "</font>";
}
else {
sTime = sDay + sHour + sMinute + sSecond;
}
if (iTime == 0) {
clearTimeout(Account);
sTime = "<span style='color:green'>时间到了!</span>";
}
else {
Account = setTimeout("RemainTime()", 1000);
}
iTime = iTime - 1;
}
else {
sTime = "<span style='color:red'>倒计时结束!</span>";
}
document.getElementById(CID).innerHTML = sTime;
}
</script>

beautiful_melody 2011-12-08
  • 打赏
  • 举报
回复

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Timer.ascx.cs" Inherits="TheContest.UserControls.Timer" %>
<script language="javascript" type="text/javascript">
var time=new Date();
time.setHours(0);
time.setMinutes(0);
time.setSeconds(0);
function myfun()
{
var sec=time.getSeconds();
document.myclock.value="已耗时:"+time.getHours()+"时"+time.getMinutes()+"分"+time.getSeconds()+"秒";
time.setSeconds(sec+1);
setTimeout("myfun()",1000);
}
</script>

<input name="myclock" type="text" style="width: 200px; height: 100px; background-color: #46B5FF; font-family: 幼圆; font-size: 30px; font-weight: bold;" />
丰云 2011-12-08
  • 打赏
  • 举报
回复
初始时间你自己随便定
丰云 2011-12-08
  • 打赏
  • 举报
回复
看看我写的可用不:

<html>
<body>
<input type="text" id="clock" size="35" />
<script type="text/javascript">
var hour = 0;
var minute = 1;
var second = 10;
var index = self.setInterval("myfun()",1000);
function myfun(){
second = second - 1;
if(second == 0){
minute = minute - 1;
if(hour == 0 && minute == 0 && second == 0){
document.getElementById("clock").value="abc:" + hour + "de" + minute + "fg" + second + "hi";
return window.clearInterval(index);
}
second = 60;
if(minute == 0){
minute = 60;
hour = hour - 1;
}
}
document.getElementById("clock").value="剩余时间:" + hour + "小时 " + minute + "分钟 " + second + "秒";
}
</script>
</body>
</html>

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧