我的目标是这个网站:https://ib.ing.cz/transactional-cz/#login/credentials
它有一个输入表单,我可以填写使用
document.querySelector('input[name=customer-id]').value = "1234567890";
但是,禁止让我走得更远的按钮 . 无论我尝试什么,它都会保持不变,直到我开始手动填写表格 . 如何启用按钮(最好以编程方式单击它)?我尝试模拟按键或操纵按钮的“禁用”属性,但我没有成功 .
UPDATE: 所以现在我可以点击按钮,到目前为止我使用的代码在这里:https://greasyfork.org/en/scripts/375326-p%C5%99ihla%C5%A1-se-na-ing(由于某种原因,我不得不删除if / else语句,在脚本的上下文中条件不正确,即使它是在Firefox控制台)
但是,当我单击按钮(手动或通过脚本)时,有一些更多的魔法阻止它工作,收到此错误消息(意思是“网站乱序” . ):
WebovéstránkyINGBankjsoumoursálněmimprovoz . Naodstraněnízávadyinpezivněpracujeme . Zavzniklékomplikacesepředemomlouvámeděkujemezapochopení .
但是网站没有出现故障,因为当我手动输入用户名(正确的用户名或我公开使用的用户名)时,它会转到密码 . 可以做些什么呢?
1 回答
参考Choosing and activating the right controls on an AJAX-driven site .
您的target site在放置在输入的祖先div上的
keyup
事件上运行其"Client number"验证(以启用该按钮等) .这意味着您必须在设置值后发送keyup事件,并确保事件从输入中冒泡 .
像这样: