问答详情
源自:2-7 编程练习

对于输入对话框的使用(prompt)有疑问

原先的代码是酱紫的:

function openWindow(){

          var message=confirm("你是否要打开新窗口")

              if(message==true)

                {  var str=prompt("请输入你要打开的新窗口的网址","http://www.imooc.com/");

                      if(str==true)

                       {window.open('http://www.imooc.com/',width=400,height=500,menubar=no,toolbar=no);}

                     else()   {}

                }

            else()   {}

}

然后问题出来了,在我在对话框中点击确定时,没有出现慕课网的网页,而是重新返回到了我学习的网页。我看了看下边的评论,然后修改为if(str)就对了,但是我还是搞不懂这个prompt在进行判断时是如何使用的?

提问者:狄狄爱吃鱼 2017-12-15 22:46

个回答

  • qq_狼烟四起_0
    2017-12-17 19:51:52
    已采纳

    prompt 返回的是文本输入框的信息,不是Boolean值,你把它和confirm弄混了,所以prompt的值不能作为if的判断条件

  • 真心为你
    2017-12-16 00:34:48

    var str=prompt("请输入你要打开的新窗口的网址","http://www.imooc.com/"); //错误

    后面的网址不要填写,prompt(str1, str2);

    str2 是你输入的网址;

    输入网址点击确定按钮,文本框(str2)中的内容将作为函数返回值


    我的code

    <!DOCTYPE html>

    <html>

     <head>

      <title> new document </title>  

      <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>   

      <script type ="text/javascript">  

        function openWindow(){

        // 新窗口打开时弹出确认框,是否打开

            var message = confirm("true and false");

            if(message){

        // 通过输入对话框,确定打开的网址,默认为 http://www.imooc.com/

            var score = prompt("请输入网址:");

        //打开的窗口要求,宽400像素,高500像素,无菜单栏、无工具栏。

                window.open(score,"-blank","width=400,height=500");

            }

        }

      </script> 

     </head> 

     <body> 

      <input type="button" value="新窗口打开网站" onclick="openWindow()" /> 

     </body>

    </html>