Aileyu 发表于 2022-8-16 15:54:28

求助大佬,怎么用js点击表单option

弄了快一下午了,不知道怎么用js点击select再选择option
用click()是完全无效
试过用option.selected = true,看起来可以修改表单,但是提交还是会变回原始的数值
求助!!

李恒道 发表于 2022-8-16 16:05:50

可以先click select之后再setinterval等到options出现,在对options点击
或者找到点击options对应的挂载函数
直接往里传参大概率也可以
如果还是不行的话
多半是存在框架之类的问题
要针对框架/组件搞方法了额

Aileyu 发表于 2022-8-16 16:14:17

李恒道 发表于 2022-8-16 16:05
可以先click select之后再setinterval等到options出现,在对options点击
或者找到点击options对应的挂载函 ...

setinterval等到options出现这个该怎么写
是要使用框架吗,我是用的原生js

王一之 发表于 2022-8-16 16:19:36

提问推荐去 https://bbs.tampermonkey.net.cn/forum-77-1.html 板块

Aileyu 发表于 2022-8-16 16:25:44

王一之 发表于 2022-8-16 16:19
提问推荐去 https://bbs.tampermonkey.net.cn/forum-77-1.html 板块

好的,我在那里又发了一贴

李恒道 发表于 2022-8-16 16:28:01

Aileyu 发表于 2022-8-16 16:14
setinterval等到options出现这个该怎么写
是要使用框架吗,我是用的原生js

setinterval循环函数,queryselector对应的options就可以了
框架是指针对网页用的框架做注入和修改
可以看元素校验那节

steven026 发表于 2022-8-16 16:41:24

李恒道 发表于 2022-8-16 16:05
可以先click select之后再setinterval等到options出现,在对options点击
或者找到点击options对应的挂载函 ...

原生的 select > option 不能用.click()点击吧
能用.click()点击的实际上都是模拟的

李恒道 发表于 2022-8-16 16:49:38

steven026 发表于 2022-8-16 16:41
原生的 select > option 不能用.click()点击吧
能用.click()点击的实际上都是模拟的 ...

别说...
还真是
要改select的selectedIndex

李恒道 发表于 2022-8-16 16:49:54

Aileyu 发表于 2022-8-16 16:25
好的,我在那里又发了一贴

如果是原生select的话要改select的selectedIndex

steven026 发表于 2022-8-16 16:54:16

李恒道 发表于 2022-8-16 16:49
如果是原生select的话要改select的selectedIndex

![微信截图_20220816165206.png](data/attachment/forum/202208/16/165231wkwc3zxkdyegcwxy.png)
option.selected=true 以后会自动改变select.selectedIndex

既然option.selected=true没用了,那改select.selectedIndex应该也没用吧
我觉得可能和事件监听有关,鬼知道那个页面监听了哪个属性或者有什么额外的触发事件
页: [1] 2
查看完整版本: 求助大佬,怎么用js点击表单option