如何使用javascript验证必填字段的FCKeditor。
发布于 2010-09-21 15:06:57
尝尝这个,
var EditorInstance = FCKeditorAPI.GetInstance('message') ;
if(EditorInstance.EditorDocument.body.innerText.length<=0)
{
alert("This firld is mandatory");
EditorInstance.EditorDocument.body.focus();
return false;
}来源:
http://dreamtechworld.wordpress.com/2008/12/06/validating-firld-in-fckeditor-using-javascript/
发布于 2010-09-21 15:06:09
使用FireBug,并查看它正在更新哪些隐藏的textarea。然后检查该元素。
if (document.getElementById('fckinstance').innerHTML === '') {
alert('required field');
}这只是一个例子。它可能也不会使用这样的id,因为同一页上有多个实例。
FCKeditor取代的textarea很可能就是保存其超文本标记语言的那个。
还要注意,FCKeditor可能看起来是空白的,即使里面有超文本标记语言。
发布于 2011-04-19 20:19:30
要验证FCKeditor是否为空,请创建以下函数,并在每次验证包含TEXTAREA的编辑器时调用该函数:
function FCKCopy() {
for (var i = 0; i < parent.frames.length; ++i ) {
if (parent.frames[i].FCK)
parent.frames[i].FCK.UpdateLinkedField();
}
}然后添加另一个函数,从TEXTAREA的值中剥离HTML标记:
function stripHTML(oldString) {
var matchTag = /<(?:.|\s)*?>/g;
return $.trim(oldString.replace(matchTag, ""));
}在上面的函数中使用了jQuery的trim函数。使用jQuery或将其替换为java脚本的一些修剪函数,例如:
function trimIt(text) {
rwhite = /\s/;
trimLeft = /^\s+/;
trimRight = /\s+$/;
if ( !rwhite.test( "\xA0" ) ) {
trimLeft = /^[\s\xA0]+/;
trimRight = /[\s\xA0]+$/;
}
return text.toString().replace( trimLeft, "" ).replace( trimRight, "" );
}现在您可以检查TEXTAREA的值,例如如下所示:
if (stripHTML($('message').val()) == '') {
alert('Please enter Message.');
}希望它能像对我一样好用。
玩得开心
https://stackoverflow.com/questions/3757964
复制相似问题