You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用JavaScript将文本框maxlength设为变量值?设置后不生效求助

问题分析与解决

你的代码看起来没生效,主要有两个原因:

  • 你定义的txt是"hello",长度刚好是5,和input原本的maxlength="5"完全一致,所以设置后看不出变化。
  • DOM标准中,input元素的最大长度属性是驼峰写法的maxLength,虽然部分浏览器兼容小写的maxlength,但为了跨浏览器兼容性,应该遵循标准写法。

修正后的代码示例

<input name="answerTxt" type="text" class="form" id="answer" onkeypress="do_enter(event);" onkeyup="count('answer');" size="25" maxlength="5"> &nbsp; 
<script>
    // 换成一个长度不等于5的字符串,比如长度10的"helloworld"
    var txt = "helloworld"
    // 使用标准的驼峰属性名maxLength
    document.getElementById('answer').maxLength = txt.length
</script>

额外说明

如果你的脚本是放在<head>标签里执行,需要确保DOM完全加载后再操作元素,可以用DOMContentLoaded事件包裹:

document.addEventListener('DOMContentLoaded', function() {
    var txt = "helloworld"
    document.getElementById('answer').maxLength = txt.length
})

内容的提问来源于stack exchange,提问作者779804

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 03:15:32