Angularjs 使用Tinymce(ui Tinymce)时使用角度ng消息验证textarea

Angularjs 使用Tinymce(ui Tinymce)时使用角度ng消息验证textarea,angularjs,tinymce,textarea,ng-messages,Angularjs,Tinymce,Textarea,Ng Messages,当具有ui tinymce属性时,如何使用ng消息如ng maxlength进行验证 还是有更好的办法 <div class="form-group"> <div class="col-sm-12"> <label>Description</label> <p class="small">Please provide as much detailed information as possible

具有
ui tinymce
属性时,如何使用
ng消息
ng maxlength
进行验证

还是有更好的办法

<div class="form-group">
    <div class="col-sm-12">
        <label>Description</label>
        <p class="small">Please provide as much detailed information as possible.</p>
        <textarea name="description" class="form-control required" ui-tinymce="tinymceOptions" ng-model="aC.testData.description"
                  ng-maxlength="100" required></textarea>
        <div class="help-block" ng-messages="mainForm.description.$error" ng-show="mainForm.description.$touched">
            <p ng-message="required">A description is required.</p>
            <p ng-message="maxlength">Description must not exceed 100 characters.</p>
        </div>
    </div>
</div>

描述

请提供尽可能多的详细信息

需要说明

说明不得超过100个字符


您看到的问题是,标准指令只计算字符数,因此简单(空)HTML示例:

<p></p> 

实际上,当没有“可见”内容时,会显示为7个字符。我为另一个编辑器构建了一个自定义指令,最后对HTML使用jQuery的.text()函数。这将删除所有HTML标记,并提供编辑器中实际文本字符数的近似值。这是DIACTIVE中代码的一部分:

var jStrippedString = jQuery(modelValue).text().trim();
return (maxlength < 0) || ngModelCtrl.$isEmpty(jStrippedString) || (jStrippedString.length <= maxlength);
var jStrippedString=jQuery(modelValue).text().trim();

return(maxlength<0)| | ngModelCtrl.$isEmpty(jStrippedString)| |(jStrippedString.length向tinymce选项添加
强制根块:“
”也应该有效。默认情况下,它不会从一开始就添加