【发布时间】:2018-12-21 21:28:47
【问题描述】:
我使用 Angular 5.2.6 并在我的 html 中添加了一些表单文件。 该表单中有一个文本区域,我想限制每行中的最大字符数。
这是 HTML 部分:
<textarea siInput [(ngModel)]="myTextarea" style="resize:none; white-space: nowrap;" rows="20" (ngModelChange)="`handleTextareaChange`($event)" (keydown)="onKeydown($event)" maxlength="{{maxlength}}" id="textID"></textarea>
我在组件类中定义了 maxlength 和 maxLineLength。 这也是我迄今为止尝试过的方法:)
onKeydown(event) {
if (event.key === "Enter") {
this.pressEnter = true;
this.maxlength += this.maxLineLength + 1;
}
else {
this.pressEnter = false;
}
}
handleTextareaChange(text) {
var mainString = text;
var allLines = mainString.split("\n");
var len = mainString.length;
var numberOfLines = allLines.length;
var indexOfCurrentLine = allLines.length - 1;
var previousLines = "";
for (var i = 0; i < indexOfCurrentLine; i++) {
previousLines += allLines[i];
}
}
如果您有任何想法,请与我分享。
谢谢。
【问题讨论】:
标签: angular typescript textarea line maxlength