テンプレートタグにコンテンツを追加しようとしています。私は使っている
getcontent("clients.json").then(function(x){
obj = JSON.parse(x);
}).then(function(x){
var x = createFullList(obj,docFragment);
filtered = obj;
return x;
}).then(function(x){
template .appendChild(x);
var clone = document.importNode(template.content, true);
alert(clone.children.length);
aside.appendChild(clone)
});
getcontent は response を返す ajax 呼び出しです。応答は解析され、オブジェクトとして obj 変数に格納されます。
createFullList は、ajax 応答のすべての要素に対して div を作成し、それを fragment に追加します。次に、フラグメントは、同じく返される div に追加されます。
function createFullList( obj , fragment ){
var aside = document.getElementsByClassName("one")[0];
for( x in obj ){
createInfoElement( fragment , obj[x].general , obj[x].job , x);
}
var div = document.createElement("div");
div.appendChild(fragment);
deleteKid( aside , 1 );
return div;
}
問題はテンプレートに追加することですが、何もしません。その内容をコピーしようとすると、子が 0 と表示されますが、div の子を印刷すると正しい番号が印刷されます。
コンテンツがテンプレートに追加されないのはなぜですか? これは正しい方法ですか、それともテンプレートにコンテンツを正しく追加する特定の方法はありますか?