如何用JS获取iframe里面的内容 50

<HTML><head><title>baidu</title></head><body><iframeborder=0name=lantksrc="http://www... <HTML><head><title>baidu</title></head>
<body>
<iframe border=0 name=lantk src="http://www.baidu.com" width=300 height=500 allowTransparency scrollbars=yes frameBorder="0">
</iframe>
</body></html>
如上例,能不能取得iframe里面的文本框中的内容
能用PHP实现更好
展开
 我来答
pieryon
推荐于2018-03-26 · 知道合伙人数码行家
pieryon
知道合伙人数码行家
采纳数:14411 获赞数:166864
获取软件设计师高级职称 万达金融最佳创新奖

向TA提问 私信TA
展开全部
1、获取iframe
eg. var ifr_window = window.frames["frameName"];
2、获取iframe中的元素
eg1. 将iframe中id为elementId 的元素置为不显示:
var ifr_window = window.frames["frameName"];
ifr_window.elementId.style.display = 'none';
eg2. 获取iframe中id为listTable的表格
var oTable = window.frames["myFrame"].document.all.listTable;
3、隐藏或显示表格的某列
js函数:
function setHiddenOrShowCol(oTable, iCol, type) {
for (i = 0; i < oTable.rows.length ; i++) {
oTable.rows[i].cells[iCol].style.display = type;
}
}
调用举例,将id为listTable的表格元素的第4列置为不显示:
var oTable = window.frames["myFrame"].document.all.listTable;
setHiddenOrShowCol(oTable, 3, 'none');
调用举例2,将id为listTable的表格元素的第4列置为显示:
var oTable = document.frames.myFrame.document.all.listTable;
setHiddenOrShowCol(oTable, 3, 'block');
supperba
2011-08-22 · TA获得超过103个赞
知道答主
回答量:151
采纳率:0%
帮助的人:108万
展开全部
js 跨域名是取不到iframe里的信息的, 除非同一个域名下.
如果是同一个域名下的.
var win = document.getElementById('frmid').contentWindow;
var frmobj = win.document.getElementById('控件');
追问
js 跨域名是取不到iframe里的信息???

我现在的情况就是要从本地得到网上的一个页面的数据,除了JS还有其他办法吗?
追答
可以通过服务器端程序获取其它网站的内容, 然后正则匹配出你所需要的东西.
PHP code:
$file = file_get_contents('http://www.newkan.com/');
var_dump($file);
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ndltc470ouz
2011-08-23 · TA获得超过1211个赞
知道小有建树答主
回答量:958
采纳率:0%
帮助的人:620万
展开全部
这个这样可以实现.
在button中添加处理方法就可以了
<input type="button" onclick=p()>
一个可能的写法可以是:
function p(){
var o=window.open("1.html");
o.frames["iframe1"].location="2.html";

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wshj847152
2011-08-22 · 超过45用户采纳过TA的回答
知道小有建树答主
回答量:144
采纳率:0%
帮助的人:94.3万
展开全部
js:
//这是子页面的Window
var win = document.getElementById('iframeID').contentWindow;
win.document.getElementById('你要找的html控件');
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
随性亻
2015-09-08 · TA获得超过4180个赞
知道小有建树答主
回答量:4622
采纳率:84%
帮助的人:627万
展开全部
var win = document.getElementById('frmid').contentWindow;
var frmobj = win.document.getElementById('控件');
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式