我有这个:
<div class="row">
<div class="col-md-11">
<label for="" class="control-label">Description<span>*</span></label>
@Html.TextAreaFor(m => m.Description, new { @class = "editor", @maxlength = "500" })<br />
@Html.ValidationMessageFor(model => model.Description)
</div>
</div>
和wysihtml5编辑器的js(使用 Razor引擎</ strong>):
<script type="text/javascript">
$('.editor').wysihtml5({
stylesheets: "/Content/css/wysiwyg-color.css",
charset: "utf-8"
})
</script>
所以基本上我要做的就是在这个字段中限制(500 char max)的字符数。如您所见,我在maxlength
中设置了@Html.TextAreaFor
属性,但它没有奏效。
有人可以告诉我该怎么做吗?提前致谢。
答案 0 :(得分:0)
使用你的textarea的id,类的intead Wysihtml5使用此ID来创建iframe。
它用于iframe的ID是PersistentEntity
由于此元素是动态创建的,因此我更新了以下代码(这是一个经过编辑的答案)。
"[your textarea id]-sandbox"
使用$(document).ready(function{
var PreventSubmitFlag=false;
$('#editor').sibling("#editor-sandbox").find("body").on("keyup", function(e){
var content = $(this).html();
if(content.length>500){
alert ("500 characters is the limit!");
PreventSubmitFlag=true;
}else{
PreventSubmitFlag=false;
}
});
});
禁用提交按钮。
;)