我現在通過下面:
o=oDOM.createElement("script");
o.text=document.all.checkrule.value;
oDOM.body.appendChild(o);
可以增加一個checkrule函數,
但我多次執行這段代碼會多次插入這個checkrule函數,請問我怎樣先刪除該新增的函數.
ps:oDOM表示的是另一個頁面的document對象,不是本頁的document,所以用typeof(oDOM.check_rule) 總是undefined
oDOM.frames.check_rule = null
同名函數會覆蓋。
你給新增加的 SCRIPT 加上一個 ID 或者 NAME,然後刪除的時候就可以利用該 ID 或者 NAME 了
不過切記,一定要在 createElement 方法中就設定 ID 或者 NAME
例如:o = document.createElement("<SCRIPT language='javascript' id='aaa'>" + "</SCR"+"IPT>");
真是太感謝了,我這樣可以了
//合成校正規則
function docombjs(){
var oEditor = FCKeditorAPI.GetInstance('FCKeditor1');
var oDOM = oEditor.EditorDocument;
var elem=oDOM.getElementById("checkid");
alert(elem);
if(elem!=null){
elem.parentNode.removeChild(elem);
}
o = oDOM.createElement("<SCRIPT language='javascript' id='checkid'>" + "</SCR"+"IPT>");
//o=oDOM.createElement("script");
o.text=document.all.checkrule.value;
oDOM.body.appendChild(o);
}
老大,還有一點問題,
如果我不用oDOM.createElement("<SCRIPT language='javascript' id='checkid'>" + "</SCR"+"IPT>");產生這個id,而直接把這個寫上了,我用var elem=oDOM.getElementById("checkid");
為什麼得到的是null,一定要用上面的createElement一下,才可以找到這個id,請再幫一下了,謝謝!
你的意思是:
你直接在頁面內寫 <SCRIPT language='javascript' id='checkid'></SCRIPT>,但是你通過如下語句 var elem=oDOM.getElementById("checkid"); 無法取得該對象,是嗎?