在子html文档中执行javascript函数的最佳方法是什么?
在我的父文档中,我有这个:
function validate() {
debugger;
var firstName = frm.FirstName.value;
var lastName = frm.LastName.value;
var email = frm.Email.value;
if (!validateFirstName(firstName)) {
return false;
}
if (!validateLastName(lastName)) {
return false;
}
if (!validateEmail(email)) {
return false;
}
var disp = window.open("results.html");
disp.window.setData(firstName, lastName, email, frm.Comments);
if (disp.confirm("Is this information correct?")) {
disp.close();
}
}
在子doc(results.html)中,我有这个:
<script type="text/javascript">
function setData(firstName, lastName, email, comments) {
frm.FirstName.value = firstName;
frm.LastName.value = lastName;
frm.Email.value = email;
frm.Comments.value = comments;
}
</script>
这不起作用。请告诉我如何使用简单的javascript和html(没有JQuery等)来实现这一点。
由于
答案 0 :(得分:1)
您应该使用 opener 属性。它返回对创建窗口的窗口的引用。
使用window.open()打开窗口时,可以使用目标窗口中的此属性返回源(父)窗口的详细信息。
<script type="text/javascript">
function setData(firstName, lastName, email, comments) {
opener.frm.FirstName.value = firstName;
opener.frm.LastName.value = lastName;
opener.frm.Email.value = email;
opener.frm.Comments.value = comments;
}
</script>