javascript - 弹出窗口未在 switch 语句中打开

标签 javascript html css

我试图在单击按钮时打开一个弹出窗口。 post_request_value 根据开关表达式 choice 决定为 1、2 或 3。

function OpenPopup() {
alert(choice); // this line works and hence removed from the code
            var choice = document.getElementById('dropdownlistid').value;
            switch(choice){
                case 1:
                    window.open("popup_page_name.aspx", "List", "scrollbars=yes,resizable=yes,width=800,height=480", "post_request_value=1");
                    break;
                case 2:
                    window.open("popup_page_name.aspx", "List", "scrollbars=yes,resizable=yes,width=800,height=480", "post_request_value=2");
                    break;
                case 3:
                    window.open("popup_page_name.aspx", "List", "scrollbars=yes,resizable=yes,width=800,height=480", "post_request_value=3");
                    break;
            }
            return false;

    }

当 window.open 被放置在 switch block 之外时它起作用。但是当它被放置在 switch case 中时,页面只是完成加载而不显示弹出窗口。

如有任何帮助,我们将不胜感激。

最佳答案

问题是您的 choice 变量可以是 "1"、"2"、"3",它们是字符串,而不是整数。试试这个代码:

var choice = parseInt(document.getElementById('dropdownlistid').value);

你的代码应该可以工作。

关于javascript - 弹出窗口未在 switch 语句中打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52473838/

相关文章:

javascript - angularJS 使用下一个/上一个按钮增加/减少当前路线

javascript - 在手机上的 ul 中隐藏 2 个 li

javascript - 如果有一个使用 javascript 或 jquery 的长菜单,如何自动将滚动条添加到侧边栏菜单

html - 仅为 div 重置 css 样式

css - 如何使视频具有响应性但仍可观看?

javascript - 在 Internet Explorer 7 上运行 AngularJS 应用程序

javascript - 在 Angular2 中导入接口(interface)

javascript - 如何使用 Javascript 和 JQuery 缩放此 HTML

javascript - "core-header-panel"Polymer 元素不显示内容 Div 中的文本

javascript - 当所有按钮具有相同值时如何检查单击了哪个按钮