用javascript取控件的值原本是一件簡單的事卻被eWebEditor搞的很不方便,致使不少初學者,不知道該如何獲取。在分析以前先把咱們習慣性的取值方法寫出來。 javascript
上面代碼很是簡單咱們通常會認爲document.getElementById("content1").value這樣就能夠取值了,但事實上 並非這樣,經過這種方式取值,只能取到初始值,當編輯器的內容變化時是取不到的,爲何呢?爲何後臺程序能夠取獲得編輯器中的值 呢,<%=request.getParameter("content1")%>這裏是能夠取到編輯器中的內容的,可是 document.getElementById("content1").value確不能夠。看來eWebEditor在js中動了手腳,必定是動態 幫定了提交事件,或動態綁定了在源碼中搜索onsubmit找到以下代碼,原來動態的綁定了onsubmit事件,這樣每次在提交前會執行 AttachSubmit函數 css
AttachSubmit就是copy編輯器的內容到隱藏域控件中的過程。 html
知道了過程咱們的問題就不難解決了。只需在取編輯器內容以前執行下AttachSubmit便可 java
整個過程就此結束,其實eWebEditor代碼中的不少思想都是很具備參考價值的例如AttachSubmit的綁定submit 方法的從新封裝,我還發現一段比較寫的比較好的代碼也一塊兒貼出來。 web
解析url的方法,這種方法之前koko跟我說過一回,今天在ewebeditor中又看到了,看來是一種比較常規的分析URL參數的方法。 jsp
總結:其實eWebEditor只是修改了提交表單的兩個事件,在提交表單前進行值copy,從而避免了編輯器每次更新都同步值這種沒有必要的操做。 編輯器