当使用ckeditor控件时,需要校验输入内容是否为空的一种解决办法(转帖)

fckeditor 验证内容是否为空 fckeditor Js验证表单
原来的代码代码如下


代码如下:

<script language = "javascript">
<!--
function checkForm(){
if (document.form1.content.value==""){
alert("请输入内容!");
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="发布">
</form>

这样是我们写程序中最经常的写法 提交之前进行验证内容是否为空!
使用了编辑器以后 在第一次按提交按钮的时候 总是获取不到编辑器的值 内容已经输入 可是content并没有任何值!需要我们再次点提交按钮 content 才能获取到值!
对于这个问题 好多人都觉得困惑!有写是用JS去读取输入域中的HTML内容!可是这只对全JS版本的fckeditor 才有效果 对 JSP版本的 并不起作用!对于这样的状态 也只能怪fckeditor开发者了!而代码太多太麻烦 想要修改其核心谈何容易!
本人经过不断的测试 现得到一个方法可以解决次问题!先拿出来大家分享
改写代码如下


代码如下:

<script language = "javascript">
<!--
function checkForm(){
setTimeout("SendForm()",50);
return false;
}
function SendForm(){
if (document.form1.content.value==""){
alert("请输入内容!");
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="发布">
</form>

修改成这样的目的是因为编辑器已经监视了onsubmit这个事件 是要在提交以后才把跟新的内容置入隐藏域content 中,原先的来不及置入内容便已经执行了验证事件所以当然取不到及时的内容!

//==============================================

以上内容为转帖,不过经过我实际工作的检验,有效。

(0)

相关推荐

  • 当使用ckeditor控件时,需要校验输入内容是否为空的一种解决办法(转帖)

    fckeditor 验证内容是否为空 fckeditor Js验证表单 原来的代码代码如下 复制代码 代码如下: <script language = "javascript"> <!-- function checkForm(){ if (document.form1.content.value==""){ alert("请输入内容!"); return false; } return true; } //--> <

  • Linux执行.sh文件时提示No such file or directory该怎么办(三种解决办法)

    先给大家看下问题描述,下图是我在运行时出现错误截图: 解决方法 分析原因,可能因为我平台迁移碰到权限问题我们来进行权限转换 1)在Windows下转换: 利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行.转换方式如下(UltraEdit):File-->Conversions-->DOS->UNIX即可. 2)方法 用vim打开该sh文件,输入: [plain] :set ff 回车,显示fileformat=dos,重新设置下文件格式:

  • VS2010中呈现控件时出错的解决方法

    在制作控件的时候容易遇到"呈现控件时出错""发生了未处理的异常.未将对象引用设置到对象的实例."这样的错误,如下图:(也有可能仅仅只是因为未设置runat="server"标签而导致该错误,请先检查该项.) 但是在编译时/运行时也都是没有错误的. 分析 如图所示的情况我们称之为"设计时"以区别于"编译时"/"运行时". 设计时:在ASP.NET环境中也就是当我们在Visual Studi

  • ASP.net 动态加载控件时一些问题的总结

    1 .在使用LoadControl加载控件后,用户控件中的某些控件不再响应事件. 这个问题主要是由于将控件加载放在if (!Page.IsPostBack)之内引起的,放在外面即可.在思归的blog上对此问题进行了详细的说明. 2.用户控件中某些控件的响应出现问题,如某个按钮第一次选择时不触发CLICK事件,第二次可以了. 这是由于没有给控件设置ID引起的,控件ID的作用在下面详细讲述. 如 复制代码 代码如下: Control userControl=(Control)Page.LoadCon

  • Mysql/MariaDB启动时处于进度条状态导致启动失败的原因及解决办法

    今天打开网站突然发现网站无法打开,后来通过SSH登陆服务器发现MARIADB数据库没有启动成功,再次启动还是无法成功启动,一直处于启动进度条,进度条结束后提示ERROR.查看日志出现以下错误: InnoDB: Unable to lock ./ibdata1, error: 11 后经调试发现是因为MariaDB数据库所在分区已经满了,造成无法启动. 只有将MariaDB数据库存放数据目录移动到另外一个磁盘份额比较大的分区或者将当前分配删除一些不必要的文件. 移动办法: 1.停掉mysql服务器

  • js输入框使用正则表达式校验输入内容的实例

    js输入框输入校验 /*用户名称格式判断--用户名只能为下划线.数字.字母或中文长度不超过10个字符*/ function checkUserName(str) { var reg = /^[_0-9a-zA-Z\u4e00-\u9fa5]{1,10}$/; return reg.test(str); } 以上这篇js输入框使用正则表达式校验输入内容的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • Android ScrollView嵌套横向滑动控件时冲突问题

    前言:今天在开发的时候遇到这样的问题,最外层是ScrollView,里面嵌套了一个横向滑动的日历控件,在滑动日历的时候很卡顿.看到这种问题,自然而然的就会想到scrollview和其他可滑动控件的冲突问题. 解决思路 用户的左右滑动操作被最外层的scrollView控件处理掉了,所以只要让scrollview对左右滑动事件不监听,让其子控件处理左右滑动事件 .重写scrollview的onInterceptTouchEvent方法,当上下滑动时不处理即可. 代码如下 public void se

  • java使用EditText控件时不自动弹出输入法的方法

    带有EditText控件的在第一次显示的时候会自动获得focus,并弹出键盘, 如果不想自动弹出键盘,可以 复制代码 代码如下: 在mainfest文件中把对应的activity设置 android:windowSoftInputMode="stateHidden" 或者android:windowSoftInputMode="stateUnchanged". 以上就是本文的全部内容了,希望大家能够喜欢.

  • Sqlserver 2005附加数据库时出错提示操作系统错误5(拒绝访问)错误5120的解决办法

    最近几天从网上找了几个asp.net的登录案例想要研究研究代码,结果在用Sql Server2005附加数据库文件时弹出错误信息: 看到网友回复说:只需给Authenticated Users赋所有权限就行了. 本人也遇到类似的问题,但是解决方法很简单,只需要使用管理员的身份打开SQL Server Management Studio,即可附加数据库了 如下图:  ,一时无解,遂求助于百度谷歌,经过各种试验,特将解决办法整理于此,希望能帮到大家,同时如果有好的意见大家多多交流啊! 方案一:切换登

  • IE在DOM操作有表单控件时的bug

    bug描述 当象下例中那样操作了表单radio/checkbox的DOM结构时(或者直接影响了他们的结构时)选中的checkbox/radio将会自动恢复到默认状态,有如点了reset按钮一样. Rank's HTML document /**/ IE form control bug from: never-online weblog 1. Select radio to checked radio1 radio2 radio3 radio4 2. Click button to change

随机推荐