JS 函数接收参数并弹出

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8" />
    <title>函数接收参数并弹出</title>
    <style type="text/css">
        body {font: 12px/1.5 Tahoma; text-align: center;}
        input {border: 1px solid #ccc; padding: 3px;}
        button {cursor: pointer;}
    </style>

    <script type="text/javascript">
    var myFn = function(a,b) {
        alert(a.value);
        alert(b.value)
        
    };
        window.onload = function() {
            var oInput = document.getElementsByTagName("input");
            var oBtn = document.getElementsByTagName("button")[0];
            oBtn.onclick = function() {
                myFn(oInput[0],oInput[1])
            }
        };
    </script>

</head>
<body>
<p><input type="text" value="北京市"></p>
<p><input type="text" value="朝阳区"></p>
<p><button>传参</button></p>
</body>
</html>
  1. 能一次性alert出框中内容?

阅读 2.9k
2 个回答

不能。一句alert()弹一次alert框。

关闭了一个alert框 下一个alert框才会弹出来。

可以把两个input value拼接成字符串,例如:

var myFn = function(a,b) {
        var str = a.value + ',' +  b.value;
        alert(str);        
    };

不能。

弹窗是同步执行的,当 alert(a.value); 调用时,系统已经不再往下执行了(阻塞了),必须关闭弹窗后,后面的代码才继续执行。

所以,解决方案就是不要使用 alert 函数,用第三方的弹窗实现,可以同时弹出多个。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题