當(dāng)使用ckeditor控件時(shí),需要校驗(yàn)輸入內(nèi)容是否為空的一種解決辦法(轉(zhuǎn)帖)
更新時(shí)間:2011年01月12日 00:05:24 作者:
這樣是我們寫(xiě)程序中最經(jīng)常的寫(xiě)法 提交之前進(jìn)行驗(yàn)證內(nèi)容是否為空!
fckeditor 驗(yàn)證內(nèi)容是否為空 fckeditor Js驗(yàn)證表單
原來(lái)的代碼代碼如下
<script language = "javascript">
<!--
function checkForm(){
if (document.form1.content.value==""){
alert("請(qǐng)輸入內(nèi)容!");
return false;
}
return true;
}
//-->
</script>
<form name="form1" method="post" action="" onsubmit="return checkForm();">
<FCK:editor id="content" basePath="fckeditor/" height="350" >
</FCK:editor>
<input type="submit" name="Submit" value="發(fā)布">
</form>
這樣是我們寫(xiě)程序中最經(jīng)常的寫(xiě)法 提交之前進(jìn)行驗(yàn)證內(nèi)容是否為空!
使用了編輯器以后 在第一次按提交按鈕的時(shí)候 總是獲取不到編輯器的值 內(nèi)容已經(jīng)輸入 可是content并沒(méi)有任何值!需要我們?cè)俅吸c(diǎn)提交按鈕 content 才能獲取到值!
對(duì)于這個(gè)問(wèn)題 好多人都覺(jué)得困惑!有寫(xiě)是用JS去讀取輸入域中的HTML內(nèi)容!可是這只對(duì)全JS版本的fckeditor 才有效果 對(duì) JSP版本的 并不起作用!對(duì)于這樣的狀態(tài) 也只能怪fckeditor開(kāi)發(fā)者了!而代碼太多太麻煩 想要修改其核心談何容易!
本人經(jīng)過(guò)不斷的測(cè)試 現(xiàn)得到一個(gè)方法可以解決次問(wèn)題!先拿出來(lái)大家分享
改寫(xiě)代碼如下
<script language = "javascript">
<!--
function checkForm(){
setTimeout("SendForm()",50);
return false;
}
function SendForm(){
if (document.form1.content.value==""){
alert("請(qǐng)輸入內(nèi)容!");
return;
}
document.form1.submit();
}
//-->
</script>
<form name="form1" method="post" action="" onsubmit="return checkForm();">
<FCK:editor id="content" basePath="fckeditor/" height="350" >
</FCK:editor>
<input type="submit" name="Submit" value="發(fā)布">
</form>
修改成這樣的目的是因?yàn)榫庉嬈饕呀?jīng)監(jiān)視了onsubmit這個(gè)事件 是要在提交以后才把跟新的內(nèi)容置入隱藏域content 中,原先的來(lái)不及置入內(nèi)容便已經(jīng)執(zhí)行了驗(yàn)證事件所以當(dāng)然取不到及時(shí)的內(nèi)容!
//==============================================
以上內(nèi)容為轉(zhuǎn)帖,不過(guò)經(jīng)過(guò)我實(shí)際工作的檢驗(yàn),有效。
原來(lái)的代碼代碼如下
復(fù)制代碼 代碼如下:
<script language = "javascript">
<!--
function checkForm(){
if (document.form1.content.value==""){
alert("請(qǐng)輸入內(nèi)容!");
return false;
}
return true;
}
//-->
</script>
<form name="form1" method="post" action="" onsubmit="return checkForm();">
<FCK:editor id="content" basePath="fckeditor/" height="350" >
</FCK:editor>
<input type="submit" name="Submit" value="發(fā)布">
</form>
這樣是我們寫(xiě)程序中最經(jīng)常的寫(xiě)法 提交之前進(jìn)行驗(yàn)證內(nèi)容是否為空!
使用了編輯器以后 在第一次按提交按鈕的時(shí)候 總是獲取不到編輯器的值 內(nèi)容已經(jīng)輸入 可是content并沒(méi)有任何值!需要我們?cè)俅吸c(diǎn)提交按鈕 content 才能獲取到值!
對(duì)于這個(gè)問(wèn)題 好多人都覺(jué)得困惑!有寫(xiě)是用JS去讀取輸入域中的HTML內(nèi)容!可是這只對(duì)全JS版本的fckeditor 才有效果 對(duì) JSP版本的 并不起作用!對(duì)于這樣的狀態(tài) 也只能怪fckeditor開(kāi)發(fā)者了!而代碼太多太麻煩 想要修改其核心談何容易!
本人經(jīng)過(guò)不斷的測(cè)試 現(xiàn)得到一個(gè)方法可以解決次問(wèn)題!先拿出來(lái)大家分享
改寫(xiě)代碼如下
復(fù)制代碼 代碼如下:
<script language = "javascript">
<!--
function checkForm(){
setTimeout("SendForm()",50);
return false;
}
function SendForm(){
if (document.form1.content.value==""){
alert("請(qǐng)輸入內(nèi)容!");
return;
}
document.form1.submit();
}
//-->
</script>
<form name="form1" method="post" action="" onsubmit="return checkForm();">
<FCK:editor id="content" basePath="fckeditor/" height="350" >
</FCK:editor>
<input type="submit" name="Submit" value="發(fā)布">
</form>
修改成這樣的目的是因?yàn)榫庉嬈饕呀?jīng)監(jiān)視了onsubmit這個(gè)事件 是要在提交以后才把跟新的內(nèi)容置入隱藏域content 中,原先的來(lái)不及置入內(nèi)容便已經(jīng)執(zhí)行了驗(yàn)證事件所以當(dāng)然取不到及時(shí)的內(nèi)容!
//==============================================
以上內(nèi)容為轉(zhuǎn)帖,不過(guò)經(jīng)過(guò)我實(shí)際工作的檢驗(yàn),有效。
相關(guān)文章
19款Javascript富文本網(wǎng)頁(yè)編輯器
19款javascript富文本編輯器。也許你還有興趣查看15個(gè)基于Web的HTML編輯器和6款所見(jiàn)即所得(WYSIWYG)的在線Web編輯器。2010-11-11FCKeditor 圖片上傳進(jìn)度條不動(dòng)的解決方法
開(kāi)發(fā)的“歷史五千年”網(wǎng)站,使用FCKeditor,在本地上傳圖片一切正常,但昨天晚上實(shí)際向網(wǎng)絡(luò)服務(wù)器(Windows Server 2003)發(fā)送圖片時(shí),發(fā)送圖像進(jìn)度條一直在滾動(dòng),無(wú)法關(guān)閉,通過(guò)FTP服務(wù)器查看服務(wù)器,圖片已經(jīng)傳送上去,但這個(gè)滾動(dòng)條卻無(wú)法結(jié)束。2011-08-08使用ZeroClipboard解決跨瀏覽器復(fù)制到剪貼板的問(wèn)題
Zero Clipboard 利用透明的Flash讓其漂浮在復(fù)制按鈕之上,這樣其實(shí)點(diǎn)擊的不是按鈕而是 Flash ,這樣將需要的內(nèi)容傳入Flash,再通過(guò)Flash的復(fù)制功能把傳入的內(nèi)容復(fù)制到剪貼板2014-06-06徹底解決ewebeditor網(wǎng)站后臺(tái)不能上傳圖片的方法
隨著windows操作系統(tǒng)和IE瀏覽器版本的不斷推出,很多客戶都漸漸放棄了IE6,IE7,使用上了IE8瀏覽器,但是突然發(fā)現(xiàn)自己網(wǎng)站后臺(tái)里面的eWebEditor文本編輯器的插入圖片等等按鈕失效了,鼠標(biāo)點(diǎn)擊后什么反應(yīng)都沒(méi)有,IE瀏覽器左下角顯示一個(gè)黃色的感嘆號(hào)提示錯(cuò)誤,就以為是網(wǎng)站空間、服務(wù)器中毒了呢,一時(shí)間紛紛都來(lái)找我們?cè)儐?wèn)2012-03-03將CKfinder 整合進(jìn) CKEditor3.0的方法
CKFinder是一款基于AJAX的文件瀏覽器,這是ASP.NET專(zhuān)用版,它可以在線瀏覽文件、管理文件、上傳文件,以樹(shù)形Tree的方式展開(kāi)目錄,自動(dòng)檢測(cè)圖片并生成縮略圖,它是由Fckeditor公司出品,同時(shí)也可配合FckEditor來(lái)使用,可達(dá)到意想不到的效果。2010-01-01在asp.net中KindEditor編輯器的使用方法小結(jié)
由于國(guó)外的服務(wù)器好象對(duì)一些要引用dll編輯器由于安全問(wèn)題,鎖定了web.config中的一些權(quán)限,在先試了FreeTexbox不行,FCKEditor也不行,因?yàn)槎际且胐ll文件,最后同事介紹一款 純js的kindeditor編輯器,2010-12-12