如果然后使用数字输入语句修复js代码

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (10)

我希望用户输入一个数字,如果数字是3或5的倍数,我想要一个单词/段落,上面写着“你是个女巫”

创建了一个函数,但我似乎无法使它工作

var x;

function pop() {
  for (x = 1; x <= 100; x++)
    if (x % 3 == 0) {
      document.getElementById('onClick').innerHTML = 'You are a Warrior';
    } else if (x % 5 == 0) {
      document.getElementById('onClick').innerHTML = 'You are a wizard';
    } else if (x % 3 == 0 && x % 5 == 0) {
      document.getElementById('onClick').innerHTML = 'You are a Sage';
    } else {
      document.getElementById('onClick').innerHTML = 'invalid';
    }
}
<input type="number" id="x">
<br>
<br>
<center><button onclick="pop()">Click Me</button> </center>  
<br>
<br>
<p id="onClick"></p>
提问于
用户回答回答于

您永远不会阅读用户输入。你有一个不应该有循环的循环。您需要更改比较的顺序。

function pop(){
    var x = document.getElementById("x").value;
    
    if (x % 3 == 0 && x % 5 == 0) {
        document.getElementById('onClick').innerHTML = "You are a Sage";
    }
    else if (x % 3 == 0 ) {
        document.getElementById('onClick').innerHTML = "You are a Warrior";
    }
    else if (x % 5 == 0){
        document.getElementById('onClick').innerHTML = "You are a wizard";
    }
    else {
        document.getElementById('onClick').innerHTML = "invalid";
    } 
}
<input type="number" id="x">
<br>
<br>
<center><button onclick="pop()">Click Me</button> </center>  
<br>
<br>
<p id="onClick"></p>

扫码关注云+社区

领取腾讯云代金券