【发布时间】:2016-10-16 13:18:38
【问题描述】:
我一直在尝试从 iframe 访问数据。我正在研究codeigniter。我花了一整天的时间寻找解决方案,但没有运气。我不是javascript专家,所以对我来说变得越来越难。请看我的代码。
home-upload-dialog.php查看文件
<div id="popup-contents">
<iframe id="upload-frame" frameborder="0" scrolling="no" height="200" width="100%" src="<?php echo site_url('home/upload_area/' . $_REQUEST['count']);?>"></iframe>
</div>
<input type="button" value="click me" onclick="run()">
<script>
run() {
var iframedoc = document.getElementsByTagName('iframe')[0].contentWindow.document;
var inputs = iframedoc.getElementById('text');
console.log(inputs);
}
</script>
home.php控制器
upload_area() {
$data['count'] = $count;
$this->load->view('upload-area', $data);
}
upload-area.php查看文件
<!DOCTYPE html>
<html>
<head>
<title>Title here</title>
</head>
<body>
<input type="text" name="text" id="text" value="someValue">
</body>
</html>
我收到错误消息Uncaught TypeError: Cannot read property 'contentWindow' of undefined
我可能忽略了一些事情。任何帮助将不胜感激!
我也尝试了$('iframe').contents().find('#text').html();,但没有成功。
【问题讨论】:
-
我已经访问过该页面,但仍然遇到同样的问题。
-
只是一个提示,几天前我试图解决一个网络界面(使用框架)的问题,我使用了
window.frames['name_of_the_frame'].document -
它仍然显示
cannot read property 'document' of undefined我的代码中可能存在一些愚蠢的小错误。但是我尝试了很多选择都没有结果。 -
你的
iframe需要有一个name属性。
标签: javascript php html codeigniter iframe