laravel-jsvalidation包不支持所见即所得的编辑器

问题描述 投票:0回答:1

我在Laravel表单而不是文本区域中使用了所见即所得编辑器(bootstrap-wysihtml5)。我正在使用laravel-jsvalidation验证表单。但是不幸的是,我的所见即所得编辑器字段未进行前端验证。

这是我的文本区号。

{!! JsValidator::formRequest('App\Http\Requests\MyFormRequest') !!}

<input type='text' name='title' />
<textarea name='content' class="textarea" placeholder="Enter text ..." 
style="width: 100%; height: 200px; font-size: 14px; line-height: 18px;"></textarea>

<script>
  $('.textarea').wysihtml5();
<script>

我使用表单请求来验证这一点,这是我的请求类。

class MyFormRequest extends FormRequest {

    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules() {
        return [
            "title" => "required",
            "content" => "required",
        ];
    }

    /**
     * Determine if the user is authorized to make this request.
     *
     * @return bool
     */
    public function authorize() {
        return true;
    }

}

标题字段是完全验证的,但不是js验证中的内容字段。如果有人知道该怎么做,那将是一个很大的帮助。 (也没有出现错误)

laravel laravel-validation
1个回答
0
投票

经过长时间的检查,我发现了问题。像这个链接一样的问题-How to validate wysiwyg editor using bootstrap validation

发生这种情况,所见即所得编辑器隐藏了textarea和jquery验证相关的laravel-jsvalidation,但不适用于隐藏字段。因此,我们需要更改代码,例如,

CSS

.textnothide {
    display: block !important;
    position: absolute;
    z-index: -1;
}

JS

<script>
  $('.textarea').wysihtml5(
      events: {
        load: function () {
            $('.textarea').addClass('textnothide');
        }
    }
  );
<script>

希望此问题不是重复的,因为它与laravel-jsvalidation相关,并保留答案,以防其他人遇到相同的问题。

© www.soinside.com 2019 - 2024. All rights reserved.