javascript - 我希望获得 1 - 80 范围内的数字,如果不在该范围内,则会出现警报框

标签 javascript

我是 JavaScript 新手,我需要一些帮助。我有一个表单和一些 JavaScript,但在输入错误范围时添加警报框时遇到问题。我希望显示一个警报框,输入范围为 1-80,例如 81。

    <script type="text/javascript">
// hide from old browsers

if (top != self) {
     top.location = self.location.href
}

// end script hiding
</script>
<script type="text/javascript">
// hide from non scripting browsers

function chooseRandom(form) {

var m = parseInt(form.lower.value);

var n = parseInt(form.upper.value) - m;

var output = Math.round(Math.random() * n) + m;

form.result.value = output;

}
// Clears the form

function clearForm(form) {

    form.upper.value="";

    form.lower.value="";

    form.upper.focus();

    form.upper.select();

}
</script>
<script type="text/javascript">
// calculates range from 1 - 80
var browName = navigator.appName;
var SiteID = 1;
var ZoneID = 80;
var browDateTime = (new Date()).getTime();
</script>

最佳答案

希望这就是您正在寻找的:

<!DOCTYPE html>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript">
    function chooseRandom(form) {
    var m = parseInt(form.lower.value);
    var n = parseInt(form.upper.value) - m;
    var output = Math.round(Math.random() * n) + m;
    form.result.value = output;
    }
    function clearForm(formId) {
    var form = document.getElementById(formId);
    form.upper.value = "";
    form.lower.value = "";
    form.result.value = "";
    form.upper.focus();
    }
    function chooseResult(formId) {
    var form = document.getElementById(formId);
    var upperVal = parseInt(form.upper.value);
    var lowerVal = parseInt(form.lower.value);
    if(isNaN(lowerVal) || isNaN(upperVal) || (lowerVal < 1) || (upperVal > 80) || (lowerVal >= upperVal)) {
        alert("Value(s) out of range, must be 1 <= lower < upper <= 80");
        clearForm(formId);
    }
    else {
        //          alert("Values ok");
        chooseRandom(form);
    }
    }
</script>
</head>
<body>
<form id="form1" method="GET" action="">
    <p>Upper:</p><input id="upper" name="upper" type="number">
    <p>Lower:</p><input id="lower" name="lower" type="number">
    <p>Result:</p><input id="result" name="result" type="number">
    <button type="button" onclick="chooseResult('form1')">Choose result</button>
    <button type="button" onclick="clearForm('form1')">Clear form</button>
    <button type="submit">Submit form</button>
</form>
</body>
</html>

关于javascript - 我希望获得 1 - 80 范围内的数字,如果不在该范围内,则会出现警报框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16106021/

相关文章:

javascript - 在较新版本中,jQuery .change() 事件是通过 .click() 触发的吗?

javascript - 根据Body类自动调用函数

javascript - 使用 jQuery 单击多个复选框

javascript - Angular - 当表单事件在 component.ts 文件中启动时,如何从指令内部检测表单事件?

javascript - ruby 是否有相当于 javascript 的 Array.prototype.every 方法?

javascript - 可以在拖动开始后异步设置 event.dataTransfer 吗?

javascript - 比较 JavaScript 数组

javascript - 如何去除 Javascript (json) 中的斜杠?任何 JQuery 插件?

javascript - 有什么方法可以使用 js 清除浏览器缓存,至少是我的域相关文件?

javascript - html/javascript 悬停菜单