2015-09-10 102 views
2

我試圖做一個程序,產生一個隨機數在1和20之間,如果生成的數字少於10它提醒單詞「失敗」,如果超過10提醒單詞「成功」。我無法弄清楚我出錯的地方。幫幫我!隨機數發生器隨着警報

<!DOCTYPE html> 
<html> 
<body> 

<p>Click the button to display a random number between 1 and 20.</p> 

<button onclick="myFunction()">Roll</button> 

<p id="demo"></p> 

<script> 
function myFunction() { 
    var x = Math.floor((Math.random() * 20) + 1); 
    document.getElementById("demo").innerHTML = x; 
}  
    if (x < 10) 
{ 
    text = (x + 「Success」); 
} 
    else 
{ 
    text = (x + 「Fail」); 
} 
document.getElementById("demo").innerHTML = text; 
</script> 

</body> 
</html> 
+0

對於初學者一看,你檢查錯誤的開發者控制檯? – Pointy

+0

嘗試用''''或''替換''''''' – Lauromine

+2

在函數的外部聲明x也是'如果生成的數字小於10,它會提醒單詞「失敗」,但是您的代碼會提醒「成功「。你必須交換成功並且失敗 –

回答

1

你在一個錯誤的方式""寫的報價,你有範圍的問題看codepen snippet,並找出自己的錯誤

var x=''; 
var myFunction= function() { 
    x = Math.floor((Math.random() * 20) + 1); 
    document.getElementById("demo").innerHTML = x; 

    if (x < 10) 
{ 
    text = x + "Success"; 
} 
    else 
{ 
    text = (x + "Fail"); 
} 
document.getElementById("demo").innerHTML = text; 
} 
+0

把你的代碼放在答案應該是自我包含的 – charlietfl

+0

ooh真的你從哪裏得到這個規則?爲什麼你投票給我?所有的計算器用戶把jsfiddle和codepen頁面放在這裏! !! –

+0

非常感謝這真的幫了我很大的忙 –

0

喜有幾個錯誤在你的代碼

所有代碼必須寫在你的函數myFunction()中;因爲x的範圍僅在該函數內。

,你可以很容易地做到這一點通過jQuery,請有下面的代碼和JS提琴演示

$(document).ready(function(){ 
     $('#btnRoll').on('click',function(){ 
      var x = Math.floor((Math.random() * 20) + 1); 
      var x = Math.floor((Math.random() * 20) + 1);  
      if(x<10) 
      $('#demo').html(x+' fail'); 
      else 
      $('#demo').html(x+' Success'); 
     }); 
    }); 

JsFiddle

感謝