<!DOCTYPE html>
<html>
<head>
<title> new document </title>
<meta http-equiv="Content-Type" content="text/html; charset=gbk"/>
<script type="text/javascript">
function openWindow(){
var mystr=comfirm("是否打开");
if (mystr=="true")
{var mystrr=prompt("确认网址,默认为","http://www.imooc.com/");}
if (mystrr!=null)
{window.open('mystrr','_blank','width=400,height=500,menuber=no,toolbar=no,status=no,scrollbars=yes');}
else
{alert("再见!");}
else
{alert("再见!");}
}
// 新窗口打开时弹出确认框,是否打开
// 通过输入对话框,确定打开的网址,默认为 http://www.imooc.com/
//打开的窗口要求,宽400像素,高500像素,无菜单栏、无工具栏。
</script>
</head>
<body>
<input type="button" value="新窗口打开网站" onclick="openWindow()" />
</body>
</html>
问题:为什么我这个运行不了,请大家帮我看看哪错了
第一:var mystr=comfirm("是否打开"); 应该是confirm;
第二:mystr == "true" 应该是mystr == true;
第三:最大的问题是你的大括号打错了。这个是正确写法,第一个if的大括号应该包含slse
function openWindow(){
var mystr=confirm("是否打开");
if (mystr==true){
var mystrr=prompt("确认网址,默认为","http://www.imooc.com/");
if (mystrr!==null){
window.open('mystrr','_blank','width=400,height=500,menuber=no,toolbar=no,status=no,scrollbars=yes');
}
else
{alert("再见!");}
}else
{alert("再见!");
}
}
<script type="text/javascript">
function openWindow(){
var mystr=confirm("是否打开");
if (mystr=="true")
{var mystrr=prompt("确认网址,默认为","http://www.imooc.com/");}
else if (mystrr!=null)
{window.open(mystrr,'_blank','width=400,height=500,menubar=no,toolbar=no,status=no,scrollbars=yes');}
else
{alert("再见!");}
}
</script>
window.open()里面的第一个参数如果用变量名的话就不要加引号,如果是网址字符串的话才需要加引号。
首先,你的confirm写错了,其次,你的mystr的返回值是布尔类型的true or false,所以判断条件应该是mystr == true,而不是mystr == "true";你改完以后试试看