我需要拒绝JS中无效字符串的帮助:
我想确保除数字1-6以外的任何输入都被拒绝,例如0或7+或任何其他字符,这就是我到目前为止所得到的
function getGraph() {
var i;
var results = [];
var dicePoss = [1, 2, 3, 4, 5, 6]
var tracker;
for (i = 1; i <= 30; i++) {
tracker = parseInt(results.push(prompt("Enter your numbers", 'diceroll')));
}
if (tracker <= 6 && tracker > 0) {
document.getElementById('x-axis').innerHTML = tracker;
} else {
document.getElementById('reject').innerHTML = "Please enter a numberPlease enter a valid number between 1-6";
}
document.getElementById('y-axis').innerHTML = dicePoss;
}
<!DOCTYPE html>
<html>
<body>
<p id="y-axis">Frequency of die rolls(results)</p>
<p id="x-axis">Dice Possible Rolls between 1-6</p>
<p id="reject"></p>
<input type="button" value="Graph Column Chat for Dice Roll" onclick="getGraph();">
</body>
</html>
答案 0 :(得分:2)
要解决此问题,您可以使用正则表达式:
$a = GCI $directory | Get-Random -Count $Count
$a | Copy-Item -Destination $Destination
还有一些关于您的代码的注释,您有:
var str = prompt("Enter your numbers",'diceroll');
if (str.match(/^[1-6]$/)) {
results.push(str);
} else {
// show error
}
这有两种错误的方式:
在我的代码中,检查位于循环内,而不是循环外。