簡體   English   中英

為什么我的switch語句不起作用?

[英]Why doesn't my switch statement work?

不知怎的,我認為“this”關鍵字沒有支付參考價值。 但是你知道我可以使用連續的if / else if語句,它會正常工作。 例如,我可以用這種方式編寫代碼。

if(painStatus == 1) {
    msg.innerHTML = "pain message 1";
}
else if(painStatus == 2) {
    msg.innerHTML = "pain message 2";
}

等等,但是使用switch語句就失敗了。 我確信這很簡單我做得不對。 對不起是一個菜鳥。

<head>

    <script type="text/javascript">
    function painLevel(val) {
            var painStatus = document.getElementById("pain_status").innerHTML = val;
            var msg = document.getElementById("painMsg");

            switch (painStatus) {
                case 1:
                    msg.innerHTML = "Pain message 1";
                    break;
                case 2:
                    msg.innerHTML = "Pain message 2";
                    break;
                    .
                    .
                    .
                default:
                    msg.innerHTML = "";

            }
        }

    </script>
</head>
<body>

<p>Please use the bar to select pain level</p>
<p>My Pain Level</p>

    <input type = "range" min="0" max="10" value="1" onchange="painLevel(this.value)" />

        Pain Level = <span id="pain_status">1</span>
        <br /><br />

        <div id="painMsg"> rePain message 1</div>
</body>

我相信你只需要像這樣解析

switch (parseInt(painStatus)) {
// As before....
}

暫無
暫無

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

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