javascript - do-while 循环和 window.alert 消息

标签 javascript html do-while

大家晚上好

我希望您能就以下主题提供帮助。 我有这些代码行:

<script>
    function save3() {
        var pn = 4;
        var flag = true;
        do {
            var selection = window.prompt("Give the User Id:", "Type a number!");
            if (selection == (/^[0-9.,]+$/)) {
                flag = false;
                window.alert("ok");
            }
        } while (flag != false);
        $("#user_id").val(selection)
        //$("#user_id").val(prompt("Give the User Id:"))
        do {
            var selection2 = parseInt(window.prompt("Give the Book Id:", "Type a number!"), 10);
        } while (isNaN(selection2));
        $("#book_id").val(selection2)
        //$("#book_id").val(prompt("Give the Book Id:"))
        do {
            var selection3 = parseInt(window.prompt("Give the Game Id:", "Type a number!"), 10);
        } while (isNaN(selection3));
        $("#game_id").val(selection3)
        //$("#game_id").val(prompt("Give the Game Id:"))
        $("#site_id").val(pn)
    }

    function load2() {

    }
</script>

我的问题对你来说可能很简单,但我想不出解决方案。 我希望用户向 window.prompt 框中插入一个值。如果值是一个数字。我想向用户显示一条消息“正确”。如果一个值是一个字母或其他东西,我想显示一条消息“再试一次”并且应该再次执行循环。

你能为我提供一些帮助吗?我认为我已经完成了我想要的一部分......

最佳答案

if (selection == (/^[0-9.,]+$/)){

这不是您使用正则表达式的方式。您需要使用 match()test()

if (selection && selection.match(/^[0-9.,]+$/))
if (selection && /^[0-9.,]+$/.test(selection))

关于javascript - do-while 循环和 window.alert 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52555363/

相关文章:

c++ - 在 'while' 循环中清除累加器

html - 调整页脚大小 - 激活滚动但滚动时背景图像不填充/显示

c - fprintf(textFilepointer) 在文件中打印两次

Javascript : pattern to avoid global variables

javascript - 如何获取具有特定数据属性的 html 节点?

javascript - 2 打开模态对话框时可见的滚动条

javascript - iOS 未加载悬停目标点击 URL bc?

linux - 使用 bash 检查列中值的统计信息

javascript - jQuery 点击监听器无法正常工作 - 已关闭

javascript - 如何指定类构造函数的返回类型(例如使用代理)?