首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >正在验证FCKeditor

正在验证FCKeditor
EN

Stack Overflow用户
提问于 2010-09-21 15:00:42
回答 4查看 4.3K关注 0票数 5

如何使用javascript验证必填字段的FCKeditor。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-09-21 15:06:57

尝尝这个,

代码语言:javascript
复制
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/

票数 2
EN

Stack Overflow用户

发布于 2010-09-21 15:06:09

使用FireBug,并查看它正在更新哪些隐藏的textarea。然后检查该元素。

代码语言:javascript
复制
if (document.getElementById('fckinstance').innerHTML === '') {
    alert('required field');
}

这只是一个例子。它可能也不会使用这样的id,因为同一页上有多个实例。

FCKeditor取代的textarea很可能就是保存其超文本标记语言的那个。

还要注意,FCKeditor可能看起来是空白的,即使里面有超文本标记语言。

票数 1
EN

Stack Overflow用户

发布于 2011-04-19 20:19:30

要验证FCKeditor是否为空,请创建以下函数,并在每次验证包含TEXTAREA的编辑器时调用该函数:

代码语言:javascript
复制
function FCKCopy() {
    for (var i = 0; i < parent.frames.length; ++i ) {
        if (parent.frames[i].FCK)
            parent.frames[i].FCK.UpdateLinkedField();
    }
}

然后添加另一个函数,从TEXTAREA的值中剥离HTML标记:

代码语言:javascript
复制
function stripHTML(oldString) {
    var matchTag = /<(?:.|\s)*?>/g;
    return $.trim(oldString.replace(matchTag, ""));
}

在上面的函数中使用了jQuery的trim函数。使用jQuery或将其替换为java脚本的一些修剪函数,例如:

代码语言:javascript
复制
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的值,例如如下所示:

代码语言:javascript
复制
if (stripHTML($('message').val()) == '') {
     alert('Please enter Message.');
}

希望它能像对我一样好用。

玩得开心

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3757964

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档