文本框输入值不变[重复]

Posted

技术标签:

【中文标题】文本框输入值不变[重复]【英文标题】:textbox input value not changing [duplicate] 【发布时间】:2021-02-16 13:44:05 【问题描述】:

以下代码更改了字段的“文本”,但网站未获取它。当您提交表单时,它说该字段仍为空,请输入有效数字。

var number = 123;
var field = document.getElementById('textfield');

field.value = number;

上面的代码只是在视觉上改变了文本框的输入。有没有办法模仿物理字段条目(让它被表单拾取)?

类型由未选中时的文本变为选中时的数字。

【问题讨论】:

听起来像代码除了 onchange 触发,但设置值不会触发更改 如果表单需要一个数字,我们为什么要将数字转换为字符串? @Dr.Tenma 它不适用于字符串或数字 @epascarello 那会是field.onchange()吗? 我们需要知道你的提交函数在做什么。 【参考方案1】:

编辑:我还没有看到你的提交功能,所以我在下面添加了一个作为示例。

这是你所期待的吗?

var number = 123;
var field = document.getElementById('td-wb-order-price-amount-limit-price');
var example = document.getElementById('example');


function clickMe() 
field.value = number.toString();;
example.innerhtml = "Your input value is " + number;
<input _ngcontent-axt-c487="" name="limitPrice" type="text" tdwbinput="" tdwbnumberinput="n4-2" 
required="" nonzero="" min="0" maxlength="7" tdwbnumberinputgroupseparator="true" 
class="td-wb-order-price-amount__input-limit-price td-wb-input ng-untouched ng-pristine ng-invalid" 
id="td-wb-order-price-amount-limit-price" autocomplete="off" aria-invalid="false">

<button onclick="clickMe();">Click </button>

<p id="example"></p>

【讨论】:

如果有帮助,我将输入字段的 HTML 代码添加到问题中 我已经更新了我的 sn-p。这更接近你想要做的事情吗? 您是否拥有要填充这些字段的网站? - 或者你有这个网站的后台访问权限? 是的,我上面的示例演示了此功能的外观。 - 如果您不拥有、管理或访问您尝试填充字段的网站,则您无法定位其他人页面上的元素来操作它们。如果这是真的,那么整个互联网将处于一个非常有趣的境地:) 那么如果没有办法,自动填充扩展如何工作呢?【参考方案2】:

您将需要onchange 属性来检测输入字段的变化。

const handleChange = () => 
  const inputValue = document.getElementById('input').value;
  console.log(inputValue)
&lt;input type="text" id="input" onchange="handleChange()" /&gt;

【讨论】:

这不是我的代码,这是一个网站的代码,所以我不能添加任何新属性。我正在开发一个扩展程序,需要使用 javascript 填写该字段。

以上是关于文本框输入值不变[重复]的主要内容,如果未能解决你的问题,请参考以下文章

向用户站立的文本框添加值[重复]

js验证如何限制文本框只能输入数字

js验证如何限制文本框只能输入数字

此页面显示用户在文本框部分输入的值[重复]

C#判断页面中的多个文本框输入值是否有重复的实现方法

winform,自定义文本框控件 实现文本框验证加水印功能