javascript - 如何设置CKEditor5 textarea不能为空?

标签 javascript php jquery html ckeditor5

我现在用的是CKEditor5

文本区域是:

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

我想将这个字段设置为不能为空,所以尝试了我的'required'属性,但这使得表单无法发送(到数据库)。

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

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

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

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

在数据库中,我可以看到像

这样的列单元格中存储了 html 标签
<p></p>

使用CKEditor输入时,取决于font-style。也可以是<i></i>

是否有其他方法可以解决此问题?

最佳答案

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

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

}

负责我所有的测试。如果有人按了几次回车然后提交,单独的 strip 标签就会失败。这只会检查您是否至少有一个 a-z,您可能想要更严格并有一个最小值,或者只允许数字,但我们不知道您在这里期望什么,所以这是一个最好的猜测。

关于javascript - 如何设置CKEditor5 textarea不能为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49482620/

相关文章:

javascript - 在哪里使用 Redux 处理计算属性?

javascript - 如何随机显示 *ngFor?

php - 尝试在 yii 数据库中存储多个复选框的 id 时出错

php - 你怎么会忘记 Laravel 中缓存的 Eloquent 模型?

php - wordpress 中的 Bootstrap 列自定义

javascript - 显示/隐藏 div 加载

jquery - li 的设置文本

javascript - jQuery - 重复 ID 的选择器

javascript - jquery ui resizable left-bottom handle to resize

javascript - Angular Material Checkbox 不会改变选中的状态