ボタンを押すとiframeを削除できるIframeを動的に作成するjavascript関数を書いています。
これらは私のjavascript関数です:
function createIframe (iframeName, width, height) {
var iframe;
if (document.createElement && (iframe = document.createElement('iframe'))) {
iframe.name = iframe.id = iframeName;
iframe.width = width;
iframe.height = height;
var connectIP = document.getElementById("ip").value;
var connectPORT = document.getElementById("port").value;
iframe.src = "http://"+connectIP+":"+connectPORT;
document.body.appendChild(iframe);
addElement(iframe.name);
}
return iframe;
}
function removeIframe(iframeName) {
iframe = document.getElementById(iframeName);
if (iframe) {
var x=iframe.parentNode.removeChild(iframe)
}
}
function addElement(iframeName) {
var butt = document.createElement('button');
var butt_text = document.createTextNode('Remove');
butt.appendChild(butt_text);
butt.onclick = removeIframe(iframeName);
document.body.appendChild(butt);
}
問題は、ボタンが作成されると、ユーザーがボタンを押したときだけでなく、onclick関数がすぐに実行されるため、新しいIframeがすぐに削除され、表示されないことです。
どうすればこの問題を解決できますか?
さらに、ボタンを親本体ではなく、新しく作成されたiframeに直接追加することは可能ですか?
前もって感謝します。