Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用bootstrapvalidation验证CKEditor?_Javascript_Jquery_Html_Ckeditor_Bootstrapvalidator - Fatal编程技术网

Javascript 如何使用bootstrapvalidation验证CKEditor?

Javascript 如何使用bootstrapvalidation验证CKEditor?,javascript,jquery,html,ckeditor,bootstrapvalidator,Javascript,Jquery,Html,Ckeditor,Bootstrapvalidator,使用带有bootstrapvalidator 0.5.2的CKEditor 4.5.6 我遵循了网站上的示例,但无法验证它 在Chrome浏览器中也出现JavaScript控制台错误(其他浏览器未检查),原因如下: 未捕获的TypeError:无法读取未定义的属性“getEditor” 以上错误仅在表单提交时显示。使用$加载PHP表单。加载(…)并使用$发布(…) 注意:-我无法在JSFIDLE中模拟错误。我想验证一下 CKEditor使用bootstrapvalidator $(documen

使用带有
bootstrapvalidator 0.5.2的
CKEditor 4.5.6

我遵循了网站上的示例,但无法验证它

在Chrome浏览器中也出现JavaScript控制台错误(其他浏览器未检查),原因如下:

未捕获的TypeError:无法读取未定义的属性“getEditor”

以上错误仅在表单提交时显示。使用
$加载PHP表单。加载(…)
并使用
$发布(…)

注意:-我无法在JSFIDLE中模拟错误。我想验证一下
CKEditor
使用
bootstrapvalidator

$(document).ready(function() {
  $('#setpolicyform').bootstrapValidator({
      excluded: [':disabled'],
      feedbackIcons: {
        valid: 'glyphicon glyphicon-ok',
        invalid: 'glyphicon glyphicon-remove',
        validating: 'glyphicon glyphicon-refresh'
      },
      fields: {
        policyta: {
          group: '.lnbrd',
          validators: {
            notEmpty: {
              message: 'The Guidelines is required and cannot be empty'
            },
            callback: {
              message: 'The Guidelines must be less than 50000 characters long',
              callback: function(value, validator, $field) {
                var div = $('<div/>').html(value).get(0),
                  text = div.textContent || div.innerText;
                return text.length <= 50000;
              }
            }
          }
        }
      }
    }).find('[name="policyta"]')
    .ckeditor()
    .editor
    .on('change', function() {
      $('#setpolicyform').bootstrapValidator('revalidateField', 'policyta');
    });
});
在JSFIDLE中添加了完整的代码

var编辑器;
$(文档).ready(函数(){
editor=CKEDITOR.replace('policyta'{
removePlugins:'sourcearea'
});
$('#setpolicyform')。bootstrapValidator({
消息:“此值无效”,
忽略:[':已禁用'],
反馈图标:{
有效:“glyphicon glyphicon ok”,
无效:“glyphicon glyphicon删除”,
正在验证:“glyphicon glyphicon刷新”
},
字段:{
政策a:{
组:'.lnbrd',
验证器:{
注意:{
消息:“指南是必需的,不能为空”
},
回拨:{
消息:“指南长度必须小于50000个字符”,
回调:函数(值,验证器,$field){
如果(值==''){
返回true;
}
var div=$('').html(值).get(0),
text=div.textContent | | div.innerText;

return text.length我希望这将对您有所帮助

您需要使用下面的编辑器版本(我不确定它是否适用于更高版本)

或者使用下面的代码

CKEDITOR.instances.policyta.updateElement();

你的方法中有几个错误

  • 您不需要在textarea上启动
    CKEditor
    ,bootstrapValidator将为您执行此操作
  • 您需要
    排除:[':disabled'],
    忽略:[':disabled'],
  • if(value==''){return true;}
    在bootstrapValidator中使用的
    回调
    函数中检查值,不需要它
  • 注意事项:

  • formValidation和bootstrapValidator是两个不同的插件,因此一个插件代码引用在另一个插件中不起作用
  • 您必须使用
    CKEditor
    v4.2或更高版本(您已经在使用)
  • 这是工作验证代码,
    CKEditor
    bootstrapvalidator

    $(document).ready(function() {
      $('#setpolicyform').bootstrapValidator({
          excluded: [':disabled'],
          feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
          },
          fields: {
            policyta: {
              group: '.lnbrd',
              validators: {
                notEmpty: {
                  message: 'The Guidelines is required and cannot be empty'
                },
                callback: {
                  message: 'The Guidelines must be less than 50000 characters long',
                  callback: function(value, validator, $field) {
                    var div = $('<div/>').html(value).get(0),
                      text = div.textContent || div.innerText;
                    return text.length <= 50000;
                  }
                }
              }
            }
          }
        }).find('[name="policyta"]')
        .ckeditor()
        .editor
        .on('change', function() {
          $('#setpolicyform').bootstrapValidator('revalidateField', 'policyta');
        });
    });
    
    $(文档).ready(函数(){
    $('#setpolicyform')。bootstrapValidator({
    已排除:[':已禁用'],
    反馈图标:{
    有效:“glyphicon glyphicon ok”,
    无效:“glyphicon glyphicon删除”,
    正在验证:“glyphicon glyphicon刷新”
    },
    字段:{
    政策a:{
    组:'.lnbrd',
    验证器:{
    注意:{
    消息:“指南是必需的,不能为空”
    },
    回拨:{
    消息:“指南长度必须小于50000个字符”,
    回调:函数(值,验证器,$field){
    var div=$('').html(值).get(0),
    text=div.textContent | | div.innerText;
    
    return text.length您是否检查了第二个解决方案(CKEDITOR.instances.policyta.updateElement();)?是的。没有更改:(我这样进行了验证,但控制台错误
    未捕获类型错误:无法读取未定义的属性“getEditor”。我不知道如何修复此错误。
    
    $(document).ready(function() {
      $('#setpolicyform').bootstrapValidator({
          excluded: [':disabled'],
          feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
          },
          fields: {
            policyta: {
              group: '.lnbrd',
              validators: {
                notEmpty: {
                  message: 'The Guidelines is required and cannot be empty'
                },
                callback: {
                  message: 'The Guidelines must be less than 50000 characters long',
                  callback: function(value, validator, $field) {
                    var div = $('<div/>').html(value).get(0),
                      text = div.textContent || div.innerText;
                    return text.length <= 50000;
                  }
                }
              }
            }
          }
        }).find('[name="policyta"]')
        .ckeditor()
        .editor
        .on('change', function() {
          $('#setpolicyform').bootstrapValidator('revalidateField', 'policyta');
        });
    });