【发布时间】:2012-12-29 21:53:32
【问题描述】:
所以,我的问题已被其他人以 Java 形式在这里提出:Java - Create a new String instance with specified length and filled with specific character. Best solution?
。 . .但我正在寻找它的 JavaScript 等价物。
基本上,我想根据每个字段的“maxlength”属性用“#”字符动态填充文本字段。因此,如果输入有maxlength="3",则该字段将填充“###”。
理想情况下会有类似 Java StringUtils.repeat("#", 10); 的东西,但是到目前为止,我能想到的最佳选择是循环并附加“#”字符,一次一个,直到最大长度为到达。我无法摆脱这种感觉,有比这更有效的方法。
有什么想法吗?
仅供参考 - 我不能简单地在输入中设置默认值,因为“#”字符需要清除焦点,并且,如果用户没有输入值,则需要“重新填充”模糊。这是我关心的“补充”步骤
【问题讨论】:
-
您这样做是为了掩盖输入字段的文本吗?
-
@MatthewCox:不,更多的是提供最大长度的可视化显示。在这种情况下,它用于一组电话号码字段,这些字段分为号码的 3 个部分。它会显示前 2 个字段需要 3 个数字,最后一个需要 4 个。
-
今天可能推荐
placeholder。将此应用于所有具有maxlength的<input>s 看起来像document.querySelectorAll("[maxlength]").forEach((element) => element.placeholder = "#".repeat(element.maxLength));。
标签: javascript html string