小编Tim*_*nen的帖子

如何以编程方式填充使用React构建的输入元素?

我的任务是抓取使用React构建的网站.我正在尝试填写输入字段并使用javascript注入页面提交表单(在移动设备中使用selenium或webview).这就像每个其他网站+技术的魅力,但React似乎是一个真正的痛苦.

所以这是一个示例代码

var email = document.getElementById( 'email' );
email.value = 'example@mail.com';
Run Code Online (Sandbox Code Playgroud)

我在DOM输入元素上更改了值,但React不会触发change事件.

我一直在尝试各种不同的方法来让React更新状态.

var event = new Event('change', { bubbles: true });
email.dispatchEvent( event );
Run Code Online (Sandbox Code Playgroud)

徒劳无功

var event = new Event('input', { bubbles: true });
email.dispatchEvent( event );
Run Code Online (Sandbox Code Playgroud)

不工作

email.onChange( event );
Run Code Online (Sandbox Code Playgroud)

不工作

我无法相信与React的互动变得如此困难.我非常感谢任何帮助.

谢谢

javascript automation web-crawler reactjs

15
推荐指数
4
解决办法
6507
查看次数

标签 统计

automation ×1

javascript ×1

reactjs ×1

web-crawler ×1