文本框输入值不变[重复]
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)
<input type="text" id="input" onchange="handleChange()" />
【讨论】:
这不是我的代码,这是一个网站的代码,所以我不能添加任何新属性。我正在开发一个扩展程序,需要使用 javascript 填写该字段。以上是关于文本框输入值不变[重复]的主要内容,如果未能解决你的问题,请参考以下文章