react.js 使用 javascript 更改输入值
react.js change input value with javascript
我想用 javascript/jquery 更改值,但是当我点击提交时,使用的是旧的初始值,而不是我的新值。
我无法更改反应代码,我只能使用 javascript/jquery 更改值,如下所示。
var value = "randomIntValue";
$("input[data-reactid='.0.2.0.0.0.0.0.2.0.0.3.0.3.0.0']").val(value).change();
以上代码无效!
根据我从上面的评论中收集到的信息,您遇到的问题是您试图通过 jQuery 更改 React 控制的组件。
这是不可能的,因为您无法直接从视图更新 React 状态。当你 运行 你的 jQuery 代码时,更改只会暂时应用到 DOM,但 React 并不知道这一点。因此,当 React 需要重新渲染视图时,DOM 中的旧值将被覆盖。
此外,通过 data-reactid
访问组件是一种糟糕的方法,因为如果对 React virtual-DOM.
进行任何更改,该值可能会发生变化
尝试应用 DOM 更改时,使用 React 和 jQuery 通常不是一个好主意。如果你不会 access/change 任何 React 代码,恐怕你就不走运了。
我想用 javascript/jquery 更改值,但是当我点击提交时,使用的是旧的初始值,而不是我的新值。
我无法更改反应代码,我只能使用 javascript/jquery 更改值,如下所示。
var value = "randomIntValue";
$("input[data-reactid='.0.2.0.0.0.0.0.2.0.0.3.0.3.0.0']").val(value).change();
以上代码无效!
根据我从上面的评论中收集到的信息,您遇到的问题是您试图通过 jQuery 更改 React 控制的组件。
这是不可能的,因为您无法直接从视图更新 React 状态。当你 运行 你的 jQuery 代码时,更改只会暂时应用到 DOM,但 React 并不知道这一点。因此,当 React 需要重新渲染视图时,DOM 中的旧值将被覆盖。
此外,通过 data-reactid
访问组件是一种糟糕的方法,因为如果对 React virtual-DOM.
尝试应用 DOM 更改时,使用 React 和 jQuery 通常不是一个好主意。如果你不会 access/change 任何 React 代码,恐怕你就不走运了。