如何在同一窗口中的帧上写新行?现在我让它用window.open创建一个新窗口。但现在我需要它在框架中。
我有一个带有两个框架的html(形式和结果),我需要通过按第一帧上的按钮来写入第二个框架。
HTML
<html>
<head>
<title> Create Curriculum</title>
<meta charset="UTF-8"/>
</head>
<frameset rows="50%,50%">
<frame id="form" src="from.html"/>
<frame id="curri" src=""/>
</frameset>
您将表格添加信息添加到输入并保存信息。还有一个按钮,使用下面输入的信息生成课程表。
JAVASCRIPT:
function genCurriculum() {
//I want to capture the second frame with id "curri"
var curri = parent.document.getElementById("curri");
curri.document.writeln("<h2>Head of the curriculum...</h2>");
//The others writeln for creating the curriculum
}
我想知道如何在框架中书写,而不是在新窗口中书写。
不使用Jquery
,只使用纯JavaScript
。 (教师要求)
答案 0 :(得分:0)
这是jsfiddle你想要发生的事吗?
HTML:
<form>
<input name="nextLine" type="text" />
<button type="button">
<span>Add a line</span>
</button>
</form>
<iframe height="100" width="200"></iframe>
JavaScript的:
(function () {
'use strict';
var button, iframe, input;
function addLine (cD, input, val) {
return function () {
var body, line;
body = cD.getElementsByTagName('body')[0]
line = cD.createElement('p');
line.innerText = val.toString() + ': ' + input.value;
body.appendChild(line);
val += 1;
}
}
button = document.getElementsByTagName('button')[0];
iframe = document.getElementsByTagName('iframe')[0];
input = document.getElementsByTagName('input')[0];
button.addEventListener('click', addLine(iframe.contentDocument, input, 0), true);
}());