asp.net控件RequiredFieldValidator验证FCKeditor提交两次才能成功的解决方法
2009-08-20 11:28
876 查看
FCKeditor是一款功能强大的开源在线文本编辑器,支持ASP、ASP.NET、ColdFusion、PHP和jsp。
最近在asp.Net应用FCKeditor,发现用RequiredFieldValidator控件对fckeditor编辑器输入框内容进行验证的时候,即使内容不为空,也需要点击提交两次才能完成,查找网上资料,发现是FCKeditor本身机制的问题。
当RequiredFieldValidator的EnableClientScript属性被设置成true时,FCKEditor不能很好的支持RequiredFieldValidator,为了解除这个限制,你必须把这个属性设置成为false,如果你希望使用客户端验证,你必须使用Custom Validator制作一个非空验证来替换
RequiredFieldValidator,在其中使用FCKeditor JavaScript API即可。
详细解决方法:首先添加一段Javascript脚本来调用FCKEditor一些属性和方法,然后将RequiredFieldValidator验证改为CustomValidator控件验证,设置ClientValidationFunction="js函数名",注意设置ValidateEmptyText="True",否则不起作用!
大家可以在www.deepteach.com下载“深度学习(asp.Net)留言板”来对照FCKeditor提交两次才能成功的解决方法。
示例代码如下:
<FCKeditorV2:FCKeditor ID="FCKeditor_guestContent" runat="server" ToolbarSet="Basic" ></FCKeditorV2:FCKeditor>
<asp:CustomValidator ID="rfv_guestContent" runat="server" ErrorMessage= "留言为空" ClientValidationFunction ="FCKeditorValidate" ValidateEmptyText ="true" ></asp:CustomValidator>
<script language="javascript" type="text/javascript">
var oEditer;
//函数名与ClientValidationFunction值对应 function FCKeditorValidate(source, arguments)
{
var value = oEditer.GetXHTML(true);
if(value=="")
{
arguments.IsValid = false;
}
else
{
arguments.IsValid = true;
}
}
function FCKeditor_OnComplete( editorInstance )
{
oEditer = editorInstance;
}
</script>
这样,一次就可以直接提交了,不会出现提交两次的bug了。
最近在asp.Net应用FCKeditor,发现用RequiredFieldValidator控件对fckeditor编辑器输入框内容进行验证的时候,即使内容不为空,也需要点击提交两次才能完成,查找网上资料,发现是FCKeditor本身机制的问题。
当RequiredFieldValidator的EnableClientScript属性被设置成true时,FCKEditor不能很好的支持RequiredFieldValidator,为了解除这个限制,你必须把这个属性设置成为false,如果你希望使用客户端验证,你必须使用Custom Validator制作一个非空验证来替换
RequiredFieldValidator,在其中使用FCKeditor JavaScript API即可。
详细解决方法:首先添加一段Javascript脚本来调用FCKEditor一些属性和方法,然后将RequiredFieldValidator验证改为CustomValidator控件验证,设置ClientValidationFunction="js函数名",注意设置ValidateEmptyText="True",否则不起作用!
大家可以在www.deepteach.com下载“深度学习(asp.Net)留言板”来对照FCKeditor提交两次才能成功的解决方法。
示例代码如下:
<FCKeditorV2:FCKeditor ID="FCKeditor_guestContent" runat="server" ToolbarSet="Basic" ></FCKeditorV2:FCKeditor>
<asp:CustomValidator ID="rfv_guestContent" runat="server" ErrorMessage= "留言为空" ClientValidationFunction ="FCKeditorValidate" ValidateEmptyText ="true" ></asp:CustomValidator>
<script language="javascript" type="text/javascript">
var oEditer;
//函数名与ClientValidationFunction值对应 function FCKeditorValidate(source, arguments)
{
var value = oEditer.GetXHTML(true);
if(value=="")
{
arguments.IsValid = false;
}
else
{
arguments.IsValid = true;
}
}
function FCKeditor_OnComplete( editorInstance )
{
oEditer = editorInstance;
}
</script>
这样,一次就可以直接提交了,不会出现提交两次的bug了。
相关文章推荐
- RequiredFieldValidator验证FCKeditor提交两次解决方法[摘自网络]
- Fckeditor在.NET中用RequiredFieldValidator验证提交两次的解决方法
- ASP.NET一个页面多个Button按钮事件避免数据验证控件RequiredFieldValidator冲突方法
- asp.net 验证控件RequiredFieldValidator与js冲突的解决
- ASP.NET一个页面多个Button按钮事件避免数据验证控件RequiredFieldValidator冲突方法
- ASP.NET一个页面多个Button按钮事件避免数据验证控件RequiredFieldValidator冲突方法
- 表单验证ASP.NET RequiredFieldValidator 控件使用方法及使用实例
- ASP.NET一个页面多个Button按钮事件避免数据验证控件RequiredFieldValidator冲突方法
- (转)ASP.NET一个页面多个Button按钮事件避免数据验证控件RequiredFieldValidator冲突方法
- ASP.NET一个页面多个Button按钮事件避免数据验证控件RequiredFieldValidator冲突方法
- ASP.NET中Textbox后的必填验证控件RequiredFieldValidator的使用方法。
- RequiredFieldValidator控件验证不能为空时报错多种解决方法以及问题分析
- ASP.NET验证控件之RequiredFieldValidator
- FCKEditor使用RequiredFieldValidator验证时必须点击两次的解决办法
- ASP.NET - ASP.NET 服务器控件验证类型 - RequiredFieldValidator 类
- ASP.NET必须字段验证控件RequiredFieldValidator
- 表单提交时要点击两次按钮(Validform验证)才能成功的解决方法
- FCKEditor使用RequiredFieldValidator验证时必须点击两次的解决办法
- FCKEditor使用RequiredFieldValidator验证时必须点击两次的解决办法
- ASP.NET验证控件之RequiredFieldValidator