有时在使用FCK的需要对它做非空的验证以前一直是使用RequiredFieldValidator控件来完成的但是会有一个小小的bug在提交的时候第一次不能通过验证需要提交两次才能通过解决的办法是禁用RequiredFieldValidator控件的客户端脚本验证功能只在服务器端验证 <asp:RequiredFieldValidator ID=RequiredFieldValidator runat=server ControlToValidate=fck Display=Dynamic EnableClientScript=False ErrorMessage=还没有填写内容></asp:RequiredFieldValidator> 今天在查找资料的时候偶然间看到一个新的解决方法 利用FCK提供的方法使用CustomValidator控件就可以解决上述的bug在客户端使用js做FCK的非空验证 代码 //Fck非空验证 var oEditer; function FckValidate(source arguments) { var value = oEditerGetXHTML(true); if($trim(value) == ) { argumentsIsValid = false; } else { argumentsIsValid = true; } } function FCKeditor_OnComplete(editorInstance) { oEditer = editorInstance; } 代码 <asp:CustomValidator ID=CustomValidator runat=server Display=Dynamic ErrorMessage=没有填写 ClientValidationFunction=validTitle OnServerValidate=ValidFck ControlToValidate=fck></asp:CustomValidator> |