写了个倒计时的东西,想让双开,就要传进去相关的参数,一共两个参数,第二次参数传入的时候出了点问题,,<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script type="text/javascript" src="jquery.js"></script>
<script>
function daojishi(sencend,op){
 sencend = Number(sencend) -1;
 var mint = ((sencend / 60) + "").split(".")[0] % 60 ;
 var hour = String((sencend / 3600)).split(".")[0] % 24 % 24 ;
 var day = String(sencend / (3600 * 24)).split(".")[0];
 var htm;
 if(sencend % 60 == 0 ){
htm="已经";
}else if(mint == 0 ){
htm = sencend % 60 + "秒";
}else if(hour == 0 ){
htm = mint+"分钟" + sencend % 60 + "秒";
}else if(day == 0 ){
htm = hour +"小时" + mint+"分钟" + sencend % 60 + "秒";
}else{
htm= day +"天" + hour+"小时"  + mint+"分钟" + sencend % 60 + "秒";
}
var v = op;
var p = "#"+op;
 $(p).html(htm);if(sencend){
  setTimeout("daojishi",1000);
 }
}</script>
</head>
<body>
<label id="lbl1">time</label>
<input id="txt1" type="text" />
<input type="button" value="click1" onclick="daojishi($('#txt1').val(),$('#lbl1').attr('id'));"/><br/>
</body>
</html>
加载了jquery,,,
帮忙看看是怎么回事···

解决方案 »

  1.   

    大师John Resig教育过我们,setTimeout传递参数用闭包,你已经用了,但是没传递参数...  setTimeout(function(){
    daojishi(sencend,op);
      },1000);这里稍微该一下就好.另外弱弱的问一句,$('#lbl1').attr('id')这样的写法有意义么....
      

  2.   


    <!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>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <script type="text/javascript" src="jquery-1.3.2.js"></script>
    <script>
    function daojishi(sencend,op){
     var sencend = Number(sencend) -1;
     var mint = ((sencend / 60) + "").split(".")[0] % 60 ;
     var hour = String((sencend / 3600)).split(".")[0] % 24 % 24 ;
     var day = String(sencend / (3600 * 24)).split(".")[0];
     var htm;
     if(sencend % 60 == 0 ){
            htm="已经";
        }else if(mint == 0 ){
            htm = sencend % 60 + "秒";
        }else if(hour == 0 ){
            htm = mint+"分钟" + sencend % 60 + "秒";
        }else if(day == 0 ){
            htm = hour +"小时" + mint+"分钟" + sencend % 60 + "秒";
        }else{
            htm= day +"天" + hour+"小时"  + mint+"分钟" + sencend % 60 + "秒";
        }
    var v = op;
    var p = "#"+op;
     $(p).html(htm);if(sencend){
      var last = $('#lbl1').html().lastIndexOf("秒");
      var num = $('#lbl1').html().substring(last-2,last);
      setTimeout("daojishi("+num+",'lbl1')",1000);
     }
    }</script>
    </head>
    <body>
    <label id="lbl1">time</label>
    <input id="txt1" type="text" />
    <input type="button" value="click1" onclick="daojishi($('#txt1').val(),$('#lbl1').attr('id'));"/><br/>
    </body>
    </html>目前只能是填写60秒以内的,至于别的你自己修改一下就可以了
      

  3.   

    if(sencend){
      setTimeout("daojishi("+sencend+","+op + ")",1000);
     }
    }
      

  4.   


    if(sencend){
      var last = $('#lbl1').html().lastIndexOf("秒");
      var num = $('#lbl1').html().substring(last-2,last);
      setTimeout("daojishi("+num+",'lbl1')",300);//这里参数冒传 }
      

  5.   

      var last = $('#lbl1').html().lastIndexOf("秒");
      var num = $('#lbl1').html().substring(last-2,last);
      setTimeout("daojishi("+num+",'lbl1')",1000);//主要就是函数名调用传参的问题,如果没有参数LZ那样也是不行的,如果没有参数是这样的:setTimeout("daojishi()", 1000);,如果有参数那么就如上了