javascript - 使用 Javascript 更改输入文本值不会更改显示

标签 javascript

我正在尝试根据用户操作更改文本 input 字段的值。我是这样做的:

document.getElementById(textFieldID).value = newValue;

它不太有效——字段中的原始文本保留在屏幕上,没有变化。但是,当我提交表单时,它的行为就像确实正确更改了值一样。 (并且调试 alert 确认是的,我正在点击那部分代码并传入正确的字段 ID 和文本值。)有人有任何见解吗?我需要做些什么来重绘 input 元素吗?


编辑:根据 Jeff B 的要求,并且根据这似乎让每个人都感到难过的事实,这里有一些相关的代码:


<script LANGUAGE="JavaScript" TYPE="text/javascript">
   function changeText(changeSelector)
   {
      var myindex  = document.getElementById(changeSelector+"Recent").selectedIndex;
      var SelValue = document.getElementById(changeSelector+"Recent").options[myindex].value;
      document.getElementById(changeSelector).value = SelValue;
      document.getElementById("historicalText").value = SelValue;
      document.getElementById("historicalTextSelect").value = changeSelector;
   }
</script>

<input onChange="updateScrollingPreview1217(this); return true;" type="text" id="crawlMsg1217" name="crawlMsg1217" size="60" maxlength="1000" value="">

<select id="crawlMsg1217Recent" name="crawlMsg1217Recent" onchange="javascript:changeText('crawlMsg1217');">
[options go here]
</select>

“onChange”处理程序并不是阻碍工作的原因;无论有没有它,我都会得到相同的行为。


编辑 2: 问题似乎是由我们产品使用的第三方拼写检查器“JSpell”引起的。 (我听说客户更喜欢使用它而不是内置于浏览器中的拼写检查;看图。)它在我的测试机器上似乎配置有轻微错误,所以我将尝试纠正它并祈祷它会产生问题离开。如果没有……应该很有趣。
编辑 3: 是的。 Fscking JSpell。为了后代,刚刚发布了一个完整的答案,明天我会在允许的时候接受它。感谢所有试图提供帮助的人;到处都是 +1,希望我能提供更多。

最佳答案

我已经确认罪魁祸首确实是 JSpell,准确的问题点是这一行:

window.onload=jspellInit;

尽管在上面的编辑 2 中提到了祈祷,但确保它配置正确并没有使问题消失。而这一行对于 JSpell 的功能是必不可少的。我不知道 JSpell 是否总是以这种方式管理 Javascript 功能,或者是否存在某种完美的因素 Storm 导致它与我的页面发生冲突,但这确实是我问题的根源。

感谢所有试图提供帮助的人。就获得正确答案而言,这显然有点双赢,因为它是由一个看似完全不相关的组件引起的,因此我没有提到,但你至少确认我是(在理论)做正确的事,而不是简单地发疯。

关于javascript - 使用 Javascript 更改输入文本值不会更改显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1835770/

相关文章:

php - 在 JavaScript (.js) 文件中包含 PHP

javascript - 将忽略某些值的逻辑添加到当前函数 "Total"

javascript - 为什么从 onclick 属性调用的函数 write() 解析为 document.write()?

javascript - 如何正确对齐按钮内的 material-ui 图标?

java - ExtJs 3组合框设置默认值

javascript - 将本地文件传递给第三方框架

javascript - 需要识别正则表达式中的不匹配字符

Javascript setInterval clearInterval 简单示例无法解释?

javascript - 递归函数的返回值为 'undefined'

javascript - 如何使用cheerio用一个标签包装元素的子元素/子元素?