Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从父级调用子Javascript函数_Javascript_Asp.net_Function_Iframe_Parent Child - Fatal编程技术网

从父级调用子Javascript函数

从父级调用子Javascript函数,javascript,asp.net,function,iframe,parent-child,Javascript,Asp.net,Function,Iframe,Parent Child,我有一个iframe,在该iframe中有一个javascript函数。我希望能够从iframe的父级调用该函数,因为我需要在iframe打开时在其内部设置一些值。到目前为止,我试过: ClientScript.RegisterClientScriptBlock(this.GetType(), "saveTasks", "<script type='text/javascript'> function SaveTasks() { frames['myIframe'].locatio

我有一个iframe,在该iframe中有一个javascript函数。我希望能够从iframe的父级调用该函数,因为我需要在iframe打开时在其内部设置一些值。到目前为止,我试过:

 ClientScript.RegisterClientScriptBlock(this.GetType(), "saveTasks", "<script type='text/javascript'> function SaveTasks() { frames['myIframe'].location.href = 'myURL'; frames['myIframe'].test(); } </script>");
ClientScript.RegisterClientScriptBlock(this.GetType(),“saveTasks”,“function saveTasks(){frames['myIframe'].location.href='myURL';frames['myIframe'].test();});
但是,我无法调用myURL文件中的test()函数


具体的语法是什么,从其父级调用子级内部的javascript函数?谢谢

我对这个不太熟悉。但是,这段javascript似乎没有任何方法能够知道“frames['myIframe']”是什么。有很多事情可能会出错,比如$document是否已加载

找到了解决方案:在调用javascript函数时,似乎没有加载找到javascript函数的子页面。幸运的是,我找到了解决办法

ClientScript.RegisterClientScriptBlock(this.GetType(),“saveTasks”,“function saveTasks(){frames['validateTaskFrame'].location.href='myURL';$('validateTaskFrame').load(function(){frames['validateTaskFrame'].test();});});

使用event.load()就像使用符咒一样

这是
iframe
的URL与您的父网站在同一个域中吗?是的,它与父网站在同一个域中。
ClientScript.RegisterClientScriptBlock(this.GetType(), "saveTasks", "<script type='text/javascript'> function SaveTasks() { frames['ValidateTasksIframe'].location.href = 'myURL'; $('#ValidateTasksIframe').load(function() { frames['ValidateTasksIframe'].test();});} </script>");