JS_使用脚本填充基于Vue的用户名密码输入框并触发登录

如图所示有一个Web登录页面,如何使用Javascript脚本填充用户名密码并登录呢?

我们先使用F12分析HTML代码:

html 复制代码
<!--输入框1-->
<input type="text" autocomplete="off" placeholder="请输入用户名" class="el-input__inner">

<!--输入框2-->
<input type="password" autocomplete="off" placeholder="请输入密码" class="el-input__inner">

<!--按钮1-->
<button type="button" class="el-button login_button el-button--default el-button--login">
    <span>登 录</span>
</button>

其中有两个输入框和一个按钮,编写Javascript脚本:

javascript 复制代码
setTimeout(function(){

    //赋值+触发

    //用户名
    document.getElementsByTagName('input')[0].value='YOUR_ACCOUNT';
    document.getElementsByTagName('input')[0].dispatchEvent(new Event('input', { bubbles: true }));

    //密码
    document.getElementsByTagName('input')[1].value='YOUR_PASSWORD';
    document.getElementsByTagName('input')[1].dispatchEvent(new Event('input', { bubbles: true }));

    //模拟点击登录按钮
    document.getElementsByTagName('button')[0].click();

},1000*1);//延迟执行1秒(根据需要修改)

由于Element UI 的输入框是基于 Vue 响应式实现的,单纯改value不会更新组件的绑定数据,调用dispatchEvent触发input事件能模拟用户手动输入的行为,让组件同步更新。

相关推荐
用头发抵命7 小时前
Vue 3 中优雅地集成 Video.js 播放器:从组件封装到功能定制
开发语言·javascript·ecmascript
蓝冰凌7 小时前
Vue 3 中 defineExpose 的行为【defineExpose暴露ref变量】详解:自动解包、响应性与实际使用
前端·javascript·vue.js
奔跑的呱呱牛8 小时前
generate-route-vue基于文件系统的 Vue Router 动态路由生成工具
前端·javascript·vue.js
柳杉8 小时前
从动漫水面到赛博飞船:这位开发者的Three.js作品太惊艳了
前端·javascript·数据可视化
小彭努力中8 小时前
192.Vue3 + OpenLayers 实战:点击地图 Feature,列表自动滚动定位
vue·webgl·openlayers·geojson·webgis
TON_G-T9 小时前
day.js和 Moment.js
开发语言·javascript·ecmascript
Irene19919 小时前
JavaScript 中 this 指向总结和箭头函数的作用域说明(附:call / apply / bind 对比总结)
javascript·this·箭头函数
2501_921930839 小时前
ReactNative项目OpenHarmony三方库集成实战:react-native-appearance(更推荐自带的Appearance)
javascript·react native·react.js
还是大剑师兰特9 小时前
Vue3 中 computed(计算属性)完整使用指南
前端·javascript·vue.js