我想讓我的輸入文本的高度調整到它的文本內容。當用戶通過觸發(input)事件填充內容時,我可以輕松實作這一點,該事件呼叫我的adjustHeight函式,該函式使用 scrollHeight.
下面的代碼示例:
<textarea #myLabel
(input)="adjustHeight(myLabel)"
[(ngModel)]="labelValue">
</textarea>
adjustHeight(element: HTMLElement) {
element.style.height = "5px";
element.style.height = (element.scrollHeight) "px";
}
這在用戶填充 input 元素時作業正常,但是當輸入文本呈現為已經填充的labelValue, (來自 API 回應) textarea 的高度不會動態更改,因為沒有(輸入)事件被觸發。
我嘗試使用(ngModelChange)事件但它似乎沒有被觸發。是否有任何其他事件可以系結到輸入元素以處理其渲染高度?提前致謝
uj5u.com熱心網友回復:
模板:
<textarea #myLabel
[style.height]="getHeight(myLabel)"
[(ngModel)]="labelValue">
</textarea>
打字稿:
public getHeight(element: HTMLElement): string {
return element.scrollHeight 'px';
}
這樣,樣式會在需要時改變。
uj5u.com熱心網友回復:
嘗試首先將labelValue初始化為''(在宣告它時),然后按照您現在應該做的那樣分配它的值。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/403084.html
標籤:
