場合によっては、appendChild()を使用してdivに追加することが可能ですが、それ以外の場合は機能せず、その理由を理解しようとしています。
動作:次のコードのようなものが正常に動作する他のコード例があります:
function fnAppend(){
var oNewNode = document.createElement("LI");
oList.appendChild(oNewNode);
oNewNode.innerText="List node 5";
}
動作しません:これはまったく異なる例ですが、違いは微妙だと思います。作業中の既存のプロジェクトからこのコードを取得しているので、とにかくFieldSet関数を変更することはできません。むしろ、それを機能させる方法を理解しようとしています。
<html>
<head>
<script type="text/javascript">
function Fieldset() {
this.id = "";
this.content = document.createElement("DIV");
this.content.id = "content";
this.title = "Title";
this.getFieldset = function() {
var div = document.createElement("DIV");
div.id = this.id;
var span = document.createElement("SPAN");
//var fieldset = document.createElement("DIV");
//fieldset.id = "fieldset";
var header = document.createElement("DIV");
header.id = "header";
span.appendChild(document.createTextNode(this.title));
header.appendChild(span);
div.appendChild(header);
div.appendChild(this.content);
//div.appendChild(fieldset);
return div;
}
}
var fieldset = new Fieldset();
fieldset.id = "newid";
fieldset.title = "new title";
org_div1.appendChild(fieldset.getFieldset());
</script>
</head>
<body onload="fieldset()">
<div id='org_div1'> The text above has been created dynamically.</div>
</body>
</html>