javascript - HTML 文本输入大小

标签 javascript html textinput

我有一个使用 javascript 动态创建的文本输入,我也在其中放置一些带有 javascript 的文本。 我想让文本输入大小可变,具体取决于文本长度,最大宽度为 70%

为此,我正在使用:

'<input type="text" style="max-width:70%" name="affiliation"
 id="affiliation'+affiliation_id+'" value="'+article_affiliations[i].name+'"
 size='+article_affiliations[i].name.length+'/>'

当文本长度超过 68% 时一切正常,但如果不是,文本输入区域小于文本大小。

例如,当文本大小为118时,textarea将只有106个字符长度,我不知道为什么。我们将不胜感激任何帮助和建议。

谢谢。

最佳答案

Javascript:

function incSize(event) {
   var size = event.value.length; 
   event.setAttribute("size", size);
   event.setAttribute("style", "width:auto")    
}

HTML:

<input type="text" name="affiliation" onkeyup="incSize(this)" size="1" />​

DEMO

关于javascript - HTML 文本输入大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12281203/

相关文章:

javascript - 如何在 Next.js 中添加 301 重定向(从 http 到 https)?

html - Bootstrap : <h4> title not on a new line

ios - React-Native ScrollView 让 TextInput 消失

jquery - 如何在 jQuery 可编辑文本输入中设置样式

javascript - 如何设置函数的原型(prototype)

javascript - Symfony 中的 Ajax 和 Jquery

javascript - Node.js 和 Python 通过 stdio 进行通信时出现问题

JavaScript const 作用域和花括号

html - 如何判断我的 Node 应用程序在 Heroku 上崩溃的原因? (HTML、Stripe、Heroku、NodeJS)

javascript - 当&lt;input type ="number">包含非数字字符时用JS获取值