在帧之间传递输入字段内的数据

时间:2015-09-15 19:40:16

标签: javascript html

我创建了一个由三个框架组成的框架集。第一个采用用户的名字。第二帧包含一个名为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>

2 个答案:

答案 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

希望有所帮助!