<!DOCTYPE html>
<html>
<head>
<title> new document </title>
<meta http-equiv="Content-Type" content="text/html; charset=gbk"/>
<script type="text/javascript">
// 新窗口打开时弹出确认框,是否打开
// 通过输入对话框,确定打开的网址,默认为 http://www.imooc.com/
//打开的窗口要求,宽400像素,高500像素,无菜单栏、无工具栏。
function openwindow(){
var openpt=confirm("是否打开新网页");
if(openpt==true)
{var address=prompt("http://www.imooc.com/");
if(adress!=null){
window.open(adress,"_blank",'width=400px,height=500,menubar=no,toolbar=no');
}
else
{
alert("结束");
}
}else
alert{"结束"};
}
</script>
</head>
<body>
<input type="button" value="新窗口打开网站" onclick="openWindow()" />
</body>
</html>
那段代码是在你的代码的基础上修改的,经测试也能运行,如果你也看不懂的话,那再看看我简化过的代码,还是在你的基础上修改的:
<!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 openpt=confirm("是否打开新网页");
if(openpt==true){
var address=prompt("请输入网址", "http://www.imooc.com");
}if(address!=null){
window.open(address,"_blank",'width=400px,height=500,menubar=no,toolbar=no');
}else{
alert("结束");
}
}
</script>
</head>
<body>
<input type="button" value="新窗口打开网站" onclick="openWindow()" />
</body>
</html>
这样写的话,不管你是点击 confirm() 框的取消按钮,还是点击 prompt() 框的取消按钮,都会弹出 alert("结束") 提示框。还有你说的if同级别的问题,在 openWindow() 这个函数里,openpt 和 address 是两个不同的变量,在if() 条件表达式里,它们自然也不同的,所以这两个 if() 语句并不是同级别。还有,if(address!=null){} 语句最好不要放在 if(openpt==true){} 语句里,不然当你点击 prompt() 框的取消按钮后,不会弹出 alert("结束") 提示框。这不符合你的设计。如果非要放便于你自己理解的话,代码也可以像你原来的那么写,不过你写的代码真的是漏洞百出,写码的时候要走点心啊:
<!DOCTYPE html>
<html>
<head>
<title> new document </title>
<meta http-equiv="Content-Type" content="text/html; charset=gbk"/>
<script type="text/javascript">
// 新窗口打开时弹出确认框,是否打开
// 通过输入对话框,确定打开的网址,默认为 http://www.imooc.com/
//打开的窗口要求,宽400像素,高500像素,无菜单栏、无工具栏。
function openWindow(){
var openpt=confirm("是否打开新网页");
if(openpt==true){
var address=prompt("http://www.imooc.com/");
if(address!=null){
window.open(address,"_blank",'width=400px,height=500,menubar=no,toolbar=no');
}else{
alert("结束");
}
}else{
alert("结束");
}
}
</script>
</head>
<body>
<input type="button" value="新窗口打开网站" onclick="openWindow()" />
</body>
</html>
你这样的设计师没问题,可是写法就有些错了,你这样写按钮都打不开,这是我在你代码的基础上改过的写法,你对比看看:
<script type="text/javascript">
function openWindow(){
var openpt=confirm("是否打开新网页");
if(openpt==true){
var address=prompt("请输入网址", "http://www.imooc.com");
}
if(address!=null){
window.open(address,"_blank",'width=400px,height=500,menubar=no,toolbar=no');
}else if(openpt==false){
alert("结束");
}else if(address==null){
alert("结束");
}
}
</script>
语法:prompt(str1, str2);
参数说明:
str1: 要显示在消息对话框中的文本,不可修改
str2:文本框中的内容,可以修改
默认的地址应该设置在promptly()中的第二个字符串中
var address=prompt("http://www.imooc.com/");改为var address=prompt(”请输入网址“,"http://www.imooc.com/");