[英]i'm unable to call the parent function from within iframe
我已经看到了与此有关的其他帖子,但是由于某种原因,以下方法无效。
onclick="parent.testing();"
现在查看全文。 我有一个index.html,其中包含所有JS文件。 同样在索引中,我有一个空的'div'标签。 使用jQuery,我将page1.html文件附加到空的“ div”。 所以索引有点像这样:
<html>
<head>
<script files>
<script>
ready { function testing(){do stuff;} }
</script>
</head>
<body>
<div><iframe src="page1.html" (added via jQuery)></div>
</body>
</html>
现在在page1.html文件中,当我单击链接时,我正在尝试调用一个函数。 但我收到以下错误:
Uncaught TypeError: Cannot call method 'testing' of undefined
我也尝试了以下方法,但是它们没有起作用:
onclick="window.testing();"
onclick="window.frames[0].testing();"
您的父页面脚本不是有效的JavaScript,但假设ready { ... }
:
<script>
ready { function testing(){do stuff;} }
</script>
...是一种简化形式,它代表了一个文档就绪处理程序,您正在将testing()
声明为该就绪处理程序中的本地函数,因此只能从该就绪处理程序中对其进行访问。 您需要在父页面中将testing()
全局:
<script>
$(document).ready({ /* your on ready stuff here */ });
function testing(){ /* do stuff; */ }
</script>
...然后您应该可以使用parent.testing()
从iframe调用它。
如果我理解您的问题,那么您的问题就是您的函数没有被调用,对吧? 因此,也许一个解决方案是将其放在您的“ page1.html”中
<script type="text/javascript" src="your_js_file"></script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.