我在网上找了些js获取时间代码,如下:
<script type="text/javascript">
  function show5(){
if(!document.layers&&!document.all)
   return
   var Digital=new Date()
   var hours=Digital.getHours()
   var minutes=Digital.getMinutes()
   var seconds=Digital.getSeconds()
   var dn="AM"
   if(hours>12){dn="PM"
   hours=hours-12
   }if(hours==0)
   hours=12
   if(minutes<=9)
   minutes="0"+minutes
   if(seconds<=9)
   seconds="0"+seconds
   //change font size here to your desire
   myclock="<font    color=blue>现在时间:"+hours+":"+minutes+":"+seconds+" "+dn+"</font>";
   if(document.layers){
   document.layers.liveclock.document.write(myclock)
   document.layers.liveclock.document.close()
   }else if(document.all)
   liveclock.innerHTML=myclock
   setTimeout("show5()",1000)
    </script></head>
<body onload="show5()" style="background-color:#3a6ea5; border:1px">
<span id="liveclock" style="position:absolute;left:250px;top:122px;; width: 109px; height: 15px"> 然后运行的话,获取不到时间呢?怎么回事哦?另外用js获取到的变动时间能直接赋给一个label控件显示吗?怎么做,谢谢大家了

解决方案 »

  1.   


    <script type="text/javascript">
    function show5(){
      var Digital=new Date()
      var hours=Digital.getHours()
      var minutes=Digital.getMinutes()
      var seconds=Digital.getSeconds()
      var dn="AM"
      if(hours>12){dn="PM"
      hours=hours-12
      }if(hours==0)
      hours=12
      if(minutes<=9)
      minutes="0"+minutes
      if(seconds<=9)
      seconds="0"+seconds
      //change font size here to your desire
      myclock="<font color=blue>现在时间:"+hours+":"+minutes+":"+seconds+" "+dn+"</font>";
      document.getElementById('liveclock').innerHTML = myclock
      setTimeout("show5()",1000)
    }
    </script>
    </head>
    <body onload="show5()" style="background-color:#3a6ea5; border:1px">
    <span id="liveclock" style="position:absolute;left:250px;top:122px;; width: 209px; height: 15px"></span>
    </body>
      

  2.   


    var _t=秒数,
    _d=Math.floor(_t/3600/24),
    _h=Math.floor((_t/3600)%24),  
    _m=Math.floor((_t/60)%60),
    _s=Math.floor(_t%60);
    _h=_h<10?'0'+_h:_h;
    _m=_m<10?'0'+_m:_m; 
    _s=_s<10?'0'+_s:_s; 
      

  3.   


    <script type="text/javascript">
      function show5(){
    if(!document.layers&&!document.all)
      return
      var Digital=new Date()
      var hours=Digital.getHours()
      var minutes=Digital.getMinutes()
      var seconds=Digital.getSeconds()
      var dn="AM"
      if(hours>12){dn="PM"
      hours=hours-12
      }if(hours==0)
      hours=12
      if(minutes<=9)
      minutes="0"+minutes
      if(seconds<=9)
      seconds="0"+seconds
      //change font size here to your desire
      myclock="<font color=blue>现在时间:"+hours+":"+minutes+":"+seconds+" "+dn+"</font>";
      
      document.getElementById("liveclock").innerHTML=myclock
      setTimeout("show5()",1000)
      }
    </script></head>
    <body onload="show5()" style="background-color:#3a6ea5; border:1px">
    <label id="liveclock" style="position:absolute;left:250px;top:122px;; width: 109px; height: 15px"> </label> 
     
      

  4.   

    谢谢大家的慷慨相助咯
    我解决了,但是我又发现了一种获取时间的方法,可是用这个方法的话,我每次点击页面一个功能按钮的话,时间就会闪一下,代码如下:
    <script type="text/javascript">
    var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    function showServerTime()
    {
    xmlhttp.open("head",".",false);
    xmlhttp.send(null);
    document.getElementById("Nowdate_label").innerHTML=new Date(xmlhttp.getResponseHeader("Date")).toLocaleString();
    }
    setInterval(showServerTime,1000);
    </script>
    页面中:
    <asp:Label ID="Nowdate_label" runat="server" Text="Nowdate"></asp:Label>
    求解?
      

  5.   

    你只要第一次从服务器获取时间就可以了,后面用 setInterval 来调整时间就可以,不要一直发 Ajax 请求,要不服务器负担很大,也没意义。     window.onload = function() {
         var date = new Date('<%= DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss") %>');     function showTime() {
         date.setSeconds(date.getSeconds() + 1);
         document.getElementById('dateSpan').innerHTML = date.toLocaleString();
         }     setInterval(showTime, 1000);
         }