我目前正在尝试编写一个JavaScript函数,该函数会在用户将表单中的URL输入文本框后单击一个按钮,在包含iframe的新窗口中打开。这是我现在拥有的:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Untitled Document</title>
<style type="text/css">
label {
display:block;
}
</style>
<script type="text/javascript">
function goTo() {
var url = document.forms[0].url.value;
myWindow = window.open('', '', 'width=800,height=800');
myWindow.document.write("<iframe src='url'></iframe>");
myWindow.focus();
return false;
}
</script>
</head>
<body>
<form action="" method="get" onsubmit="return goTo()">
<label for="url">Enter the URL:
<input type="text" name="url" id="url">
<input type="submit" value="Submit">
</form>
</body>
</html>
我目前面临的主要问题是确定如何将url变量传递给document.write()方法。当我在iframe中尝试典型的源URL时,它会正常工作,但由于我想使用用户传入的值,因此无法实现目的。欢迎任何帮助,我没有虚荣的作者身份,所以如果我从根本上做错了,我很乐意 - 寻求专业人士让我知道。
答案 0 :(得分:1)
url变量是示例中字符串的一部分。试试这个。另外,请确保它是有效的网址。
myWindow.document.write("<iframe src='"+ url +"'></iframe>");
我可能还会补充说,在新窗口中编写iframe有点多余。你应该做的
myWindow = window.open(url, "", "width=800,height=800");