如何处理Summernote所见即所得编辑器生成的无效HTML

时间:2019-01-22 20:55:46

标签: laravel summernote

我正在使用带有Laravel框架的Summernote WYSIWYG编辑器。

我注意到,许多使用Summernote WYSIWYG编辑器的方案都可能导致生成无效HTML代码的情况。例如,用户可以选择多行,包括不同的文本,甚至可以选择一些图片。然后,如果用户单击BOLD或ITALIC,则会生成无效的HTML。

我的问题是你如何解决这个问题?

我有一个功能可以删除HTML代码周围的<p>...</p>

private static function removeWrapperPTag($code)
{
    if(starts_with($code, '<p'))
    {
        $corrected = str_replace_first('<p','<div',$code);

        if(ends_with($code, '</p>'))
            return str_replace_last('</p>','</div>',$corrected);
        else if(ends_with($code, "</p>\n"))
            return str_replace_last("</p>\n",'</div>',$corrected);
    }
    return $code;
}

...但这只是一个示例,如何检测所有可能产生无效HTML代码的情况?

我很想听听您如何处理此问题...

0 个答案:

没有答案