猜测是类似双向绑定的原因,那么这种情况如何使用控制台来更新 input 的值呢?
随着 web 前端发展, MVVM 框架的流行, 很多页面想要实现自动赋值不再向以前那样对输入框简单的赋值即可, 还需要对应的触发相关的事件让对应框架去取值才行.http://fengyitong.name/index.php/archives/38/
上面的方法也无效 = =!
以 B 站高级弹幕举例:在控制台使用 $(xxx).val('xxx') 或者 document.querySelector().value=xxx 更新 input 的数值后,UI 可以正常显示,获取的也是更新后的值。但是测试效果依旧读取的旧值。尝试手动调用各种 change、input、blur 等方法,都无效。
$(xxx).val('xxx')
document.querySelector().value=xxx
因为 B 站使用了 Vue 猜测跟双向绑定可能有关,但是不知道怎么通过控制台让它更新。。。。
手动触发也无效?触发方式不对吧。基于Vue,你现在是下面这样一个效果
手动触发 input 事件 document.querySelector('input').dispatchEvent(new CustomEvent('input', {}))
input
document.querySelector('input').dispatchEvent(new CustomEvent('input', {}))
1.4m articles
1.4m replys
5 comments
57.0k users