我创建了一个由三个框架组成的框架集。第一个采用用户的名字。第二帧包含一个名为greeting的按钮。并且第三帧outcome.html应该结果:点击问候按钮后你好(用户的名字)。有关如何在点击问候语按钮时将用户名传递给结果框的任何帮助,将其显示为" Hello ..."使用javascript。
框架集:
<frameset rows="34%,33%,33%">
<frame src="name.html" name="name">
<frame src="greeting.html" name="greeting">
<frame src="outcome.html" name="outcome">
</frameset>
Name.html:
<body>
<div id="fname">
<form>
Client Name: <input type="text" name="fname" id="fname">
</form>
</div>
</body>
Greeting.html:
<div id="greeting">
<form>
<button type="button">Greeting</button>
</form>
</div>
答案 0 :(得分:0)
你可以节省一些时间并使用jQuery(即使我不推荐使用重型库来执行简单的DOM操作来完成小任务,但在你的情况下,我想你只需要完成工作)。
使用功能.contents()获取iframe的内容
继续这样做:
var nameFrame = $('frame[name=name]').contents();
var outcomeFrame = $('frame[name=outcome]').contents();
var greetingFrame = $('frame[name=greeting]').contents();
$(greetingFrame).on('click', 'button', function() {
var name = $(nameFrame).find('.fname').val();
$(geetingFrame).text(name);
});
答案 1 :(得分:0)
可以通过顶部父框架上的name属性访问框架。
例如,从一个框架内:
parent.greeting.document.getElementById('fname').value
以下是一个工作示例:http://embed.plnkr.co/fMMCGxkR0zwgo3nCqhC5/preview
希望有所帮助!