【发布时间】:2022-12-25 15:56:10
【问题描述】:
我有一个输入类型的文本
<input type="text" id="txtid">
当我开始在输入中输入文本时,我应该能够获得输入文本的长度。
这是我试过的:
document.getElementById("txtid").offsetWidth;
和
var test = document.getElementById("txtid");
var width = (test.clientWidth + 1) + "px";
这两个没有给出输入文字的宽度
基本上我想要的是:
假设input text宽度是320px。我需要输入文本的宽度,即 120px,它在我输入时不断变化。
【问题讨论】:
-
我认为这不是微不足道的。您可以生成一个不可见的跨度,它始终包含与输入框相同的内容。然后测量它的宽度。
-
也许你可以使用这个:stackoverflow.com/a/21015393/4108884 作为解决方法
-
存在另一个依赖项:它自身的字体。每种字体中每个字母的宽度都有不同的宽度。甚至字母也有不同的宽度。例如:“i”肯定小于“w”。
-
@Paflow 不错。更好的是你可以发布答案。
标签: javascript html css input