我可以在Javascript中的父窗口上使用setTimout()函数吗?

时间:2013-11-18 16:56:09

标签: javascript settimeout onsubmit

<form id="#add_new_contact_method" name="add_new_contact_method"
style="padding:10px;" onsubmit="parent.replaceAttributesForm();
closeModal();">

closeModal():http://pastebin.com/M2Vz2TwV

我已经提交了这个表单,关闭了一个模态,并且正确地运行了我的replaceAttributesForm()函数。我似乎无法在不使用TypeError的情况下使用setTimeout函数:&#39; undefined&#39;消息。

有关如何使用parent.setTimeout(alert(&#39; Test&#39;),2000)的任何想法,并让它工作?

提前感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

无需在父窗口上调用setTimeout。

只需使用

setTimeout(function(){
    parent.window.someMethodInParent();
},2000);

答案 1 :(得分:0)

你必须给一个闭包作为setTimeout函数的第一个参数:

parent.setTimeout(function(){ alert('Test'); }, 2000);

答案 2 :(得分:0)

setTimeout需要运行一个函数。

parent.setTimeout(alert('Test'), 2000)你给它一个警告返回的值来运行。

你必须写:

setTimeout(function() {
    alert('Test');
}, 2000);