如何设置CKEditor5 textarea不能为空?

时间:2018-03-26 01:06:31

标签: javascript php jquery html5 ckeditor5

我现在正在使用CKEditor5

textarea是:

<textarea class="form-control" name="post_content" rows="10" cols="30" id="editor"></textarea>

我想设置这个不能为空的字段,所以尝试了我需要的&#39;属性,但它使表单无法发送出去(到数据库)。

然后我试图阻止我的表单将内容发送到数据库,如果它是空的:(PHP)

if(!empty($post_content))
{
   ...create query and send query to  database...
}
else
{
   do nothing
}

但是,我仍然可以向数据库发送空内容。

因为它会向数据库发送一些html标签,即使我提交了一个空内容。

在数据库中,我可以看到列单元格中存储了html标签,如

<p></p>

使用CKEditor进行输入时,它依赖于字体样式。它也可以是<i></i>

还有其他方法可以解决这个问题吗?

2 个答案:

答案 0 :(得分:2)

有同样的问题,想出了这个:

if(preg_match("/[a-z]/i", strip_tags($post_content))){

}

完成了我的所有测试。如果有人按下输入几次然后提交,则单独的条带标签会失败。这只检查你是否至少有一个a-z,你可能想要更严格,并且有最低限度,或只允许数字,但我们不确切地知道你在这里的期望,所以它是最好的猜测。

答案 1 :(得分:0)

if ($("#editor").val()) {
    // textarea is not empty
   //...create query and send query to  database...
}
else{
 //do nothing
}

您还可以使用$ .trim删除空格:

if ($.trim($("#editor").val())) {
    // textarea is not empty or not contains  white-space
    //...create query and send query to  database...
}
else{
   //do nothing
}