HTML在線編輯器有兩種基本調用方法
一、使用object調用
1、怎麼在web頁中嵌入html編輯器: 我們在需要嵌入得位置加入以下html代碼:<object id=doc_html data="gledit.htm" width=530 height=320 type=text/x-scriptlet VIEWASTEXT></object>
其中object標簽裡面得data後面接得數據就是我們所要調用得在線編輯器頁得路徑,id就是我們調用object得id,後面取編輯器中得數據時就要用到這個id。Width和height就是編輯器得高度和寬度了。
2、怎麼取得html編輯器中的數據:所有需要提交的內容我們都是放在一個表單裡面,同樣利用object 調用的編輯器也放在這個表單裡面,同時我們可以設置一個隱藏的文本區域(<textarea name="content" style="display:none"></textarea>或<INPUT TYPE="hidden" name="content">)用以在提交的時候臨時保存html在線編輯器的數據,因為在asp或者jsp,php中不能直接獲取表單中的 object的內容,所以我們必須借助隱藏文本區域來獲取數據。我們在表單提交的同時將object裡面的內容復制到隱藏的文本區域中。詳細代碼如下:
<script language="javascript">
function CheckForm()
{
document.form1.content.value=document.form1.doc_html.value;
}
</script>
<form method="post" action="add_news_save.asp" onsubmit="CheckForm()" name="form1">
<object id=doc_html name= doc_html style="LEFT: 0px; TOP: 0px" data=" gledit.htm" width=530 height=320 type=text/x-scriptlet VIEWASTEXT></object>
<input type="hidden" name="content" >
</form>
這樣在後台處理的頁面中我們就可以直接通過取隱藏區域content的數據來獲取html在線編輯器的數據。
3、怎麼在文本編輯器中加入上傳本機圖片到html在線編輯器中:首先我們使得在點擊插入圖片的按鈕時彈出一個上傳圖片的窗口,我們利用自己寫的程序來實現上傳本機圖片到服務器上,然後我們需要記錄圖片的路徑,然後通過html在線編輯器的值中加入顯示圖片的html標簽。詳細說明及代碼如下:
在編輯器中我們在插入圖片的按鈕上加入事件 onclick="window.open('img_upload.asp','img_upload','width=481 height=190')">在'img_upload.asp'中我們將提交的圖片上傳到服務器制定目錄然後記錄圖片路徑
<script language=javascript>
var src='<%="upload/"&newname%>';
opener.form1. doc_html.value +="<img border=0 src="+src+">";
window.close();
</script>
這樣就實現了簡單的將上傳的圖片插入到編輯器中。
4、怎麼在編輯修改文章的時候調用HTML在線編輯器來修改數據:當我們把在添加的時候將HTML在線編輯 器來修改數據提交到數據庫後我們還需要能將數據庫的內容用HTML在線編輯器來修改數據。首先我們在表單中加入一個隱藏區域來放置數據庫中的內容,例 如<TEXTAREA style="display:none" NAME="content" ROWS="20" COLS="70"><%= rs("Content")%></TEXTAREA>,要注意這裡我們用隱藏的textarea而不能用隱藏的input,因為數據 裡面可能包含了回車換行,所以如果我們使用<INPUT TYPE="hidden" name=content value="<%=(rs("Content")%>">很可能因為<%=(rs("Content")%>有換行而出 現HTML錯誤(value=後面接的數據必須保證是在一行,否則出錯)。然後按照前面介紹的方法使用object調用HTML在線編輯器,方法和代碼同 上,現在我們要做的其實就是提交時候的逆過程,我們只要將隱藏文本區域的內容復制到HTML在線編輯器就可以了,在這裡我們在body裡面加 上<body onload="document.form1. doc_html.value=document.form1.content.value">,這樣在頁面裝載完的時候就可以將數據庫中的內容放 入HTML在線編輯器中編輯了,提交過程和上面介紹的一樣,在此就不贅述了。
二、使用iframe調用
1、 怎麼在web頁中嵌入:我們在需要嵌入得位置加入以下html代碼:<IFRAME SRC="gledit.htm" id='content_html' style="LEFT: 0px; POSITION: absolute; TOP: 0px;z-index:0" width="100%" height="100%"></IFRAME>其中"src="後面接得數據就是我們所要調用得在線編輯器頁得路徑,id就是我們調 用IFRAME得id,Width和height就是編輯器得高度和寬度了。
2、 怎麼取得html編輯器中的數據:同樣所有需要提交的內容我們都是放在一個表單裡面,同時我們可以設置一個隱藏的文本區域(<textarea name="content" style="display:none"></textarea>或<INPUT TYPE="hidden" name="content">)用以在提交的時候臨時保存html在線編輯器的數據,我們借助隱藏文本區域來獲取數據。我們在表單提交的同時將 object裡面的內容復制到隱藏的文本區域中。詳細代碼如下:
function subchk(cmd)
{
document.form1.content.value= window.content_html.getHTML();
}
</SCRIPT>
<FORM METHOD=POST ACTION="Article_add_save.gl" name="form1" onsubmit=" subchk()">
<input type="hidden" name="content" >
<IFRAME SRC="gledit.htm" id='content_html' style="LEFT: 0px; POSITION: absolute; TOP: 0px;z-index:0" width="100%" height="100%"></IFRAME>
</FORM>
在後台處理的頁面中我們就可以直接通過取隱藏區域content的數據來獲取html在線編輯器的數據。
2、怎麼取得html編輯器中的數據:所有需要提交的內容我們都是放在一個表單裡面,同樣利用object 調用的編輯器也放在這個表單裡面,同時我們可以設置一個隱藏的文本區域(<textarea name="content" style="display:none"></textarea>或<INPUT TYPE="hidden" name="content">)用以在提交的時候臨時保存html在線編輯器的數據,因為在asp或者jsp,php中不能直接獲取表單中的 object的內容,所以我們必須借助隱藏文本區域來獲取數據。我們在表單提交的同時將object裡面的內容復制到隱藏的文本區域中。詳細代碼如下:
<script language="javascript">
function CheckForm()
{
document.form1.content.value=document.form1.doc_html.value;
}
</script>
<form method="post" action="add_news_save.asp" onsubmit="CheckForm()" name="form1">
<object id=doc_html name= doc_html style="LEFT: 0px; TOP: 0px" data=" gledit.htm" width=530 height=320 type=text/x-scriptlet VIEWASTEXT></object>
<input type="hidden" name="content" >
</form>
這樣在後台處理的頁面中我們就可以直接通過取隱藏區域content的數據來獲取html在線編輯器的數據。
3、怎麼在文本編輯器中加入上傳本機圖片到html在線編輯器中:首先我們使得在點擊插入圖片的按鈕時彈出一個上傳圖片的窗口,我們利用自己寫的程序來實現上傳本機圖片到服務器上,然後我們需要記錄圖片的路徑,然後通過在調用html在線編輯器的web頁中寫一個函數在光標的位置插入顯示圖片的html標簽。詳細說明及代碼如下:
在編輯器中我們在插入圖片的按鈕上加入事件 onclick="window.open('img_upload.asp','img_upload','width=481 height=190')">在調用編輯器的頁面中我們定義好插入html代碼到編輯器的函數
<script language=javascript>
function insertHtml(HtmlCode)
{
var win=window.content_html.idEditbox.document;//其中編輯區域是gledit.htm中的一個iframe,id是idEditbox
window.content_html.idEditbox.focus();//是編輯器獲得焦點,防止代碼插入在編輯器外地方
win.selection.createRange().pasteHTML(HtmlCode)//在光標的位置插入html代碼
}
</script>
在處理上傳圖片的文件中,我們調用父窗口的函數插入html代碼
<script language=javascript>
var src='<%=" upload/"&newname%>';
var htmlcodes;
htmlcodes = "<img src='"+src+"' alt='<%=theForm("alt")%>' align='<%=theForm("align")%>' border='<%=theForm("border")%>' hspace='<%=theForm("hspace")%>' vspace='<%=theForm("vspace")%>'>";
opener.insertHtml(htmlcodes)
window.close();
</script>
這樣就實現了簡單的將上傳的圖片插入到編輯器中。
4、 怎麼在編輯修改文章的時候調用HTML在線編輯器來修改數據:當我們把在添加的時候將HTML在線編 輯器來修改數據提交到數據庫後我們還需要能將數據庫的內容用HTML在線編輯器來修改數據。首先我們在表單中加入一個隱藏區域來放置數據庫中的內容,例 如<TEXTAREA style="display:none" NAME="content" ROWS="20" COLS="70"><%= rs("Content")%></TEXTAREA>,在這裡我們在調用編輯器的頁面中的body標簽裡面加上<BODY onload="insertHtml(document.form1.content.value)">其中inserthtml()就是我們定 義好插入html代碼到編輯器的函數(具體參考插入圖片的代碼)。這樣在頁面裝載完的時候就可以將數據庫中的內容放入HTML在線編輯器中編輯了,提交過 程和上面介紹的一樣,在此就不贅述了。