簡體   English   中英

如何使當前時間顯示在警報框中

[英]How to make the current time appear in an alert box

如何使當前時間顯示在警報框中? 我是編程的新手,所以我完全迷路了。 我正在用html5或javascript編碼。 我在這里添加了大部分代碼。

這是我的代碼:

<script>
    function startTime(){
        var today=Date();
        var h=today.getHours();
        var m=today.getMinutes();
        var s=today.getSeconds(); 
        document.getElementById('txt').innerHTML=h+":"+m+":"+s; 
    }

</script>
<div id="txt"></div>

<h1>What would you like it to say?</h1>

    <p>Commmon Requests:</p>

    <form action="">
    <select name="requests" onchange ="checkIfOther();" id="dropDown1">
    <option value="blank"> </option>
    <option value="good morning sir">Good Morning Sir</option>
    <option value="current time">Current Time</option>
    <option value="other">Other</option>    
    </select>
    </form>

    </p>
<button onclick="mySubmit()" value>Submit</button>

    <div id="other" style="display:none">
        <br><br><label>Optional Request: </label><input type="text" id="otherText"/>
    </div>

</body>
</html>

<script>
    function checkIfOther(){
        a=document.getElementById("dropDown1");        
        if(a.value == "other"){           
            document.getElementById("other").setAttribute("style","display:inline");
        }
        else{
            document.getElementById("other").setAttribute("style","display:none");
            }
    }   
</script>

<script type="text/javascript">
    function mySubmit(){
        var x=document.getElementById("dropDown1");
        if(x.value == "other"){
            alert("You have chosen: " + otherText.value); 
        }
        else if(x.value == "current time"){
            alert("The current time is: " + 'txt'.value); //what do I do here?
        }
        else{   
            alert("You have chosen: " + x.options[x.selectedIndex].text);
        }   
    }   
</script>

難道我做錯了什么?

首先,您的HTML完全被搞砸了。 驗證它。

至於代碼本身, startTime已損壞。 它需要new Date()

function startTime(){
  var today = new Date();
  var h = today.getHours();
  var m = today.getMinutes();
  var s = today.getSeconds(); 
  return [ h, m, s ].join(':')
}

並將其放入警報框,您可以執行以下操作:

alert(startTime());

如果要將其放在類似<div id="txt"></div>的元素中,則可以執行以下操作:

document.getElementById('txt').innerHTML = startTime();

你可以做這樣的事情。

...
else if(x.value == "current time"){
    startTime();
    alert("The current time is: " + document.getElementById('txt').innerHTML);
...

使函數getTime返回當前時間字符串:

function getTime(){
    var today = new Date();
    var h = today.getHours();
    var m = today.getMinutes();
    var s = today.getSeconds(); 
    return h+":"+m+":"+s; 
}

然后使用:

…
else if(x.value == "current time"){
    alert("The current time is: " + getTime());
}
…

如果仍然需要startTime函數,則也可以在其中使用它:

function startTime() {
    document.getElementById('txt').innerHTML = getTime();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM