扫码关注官方订阅号
官方暴露的事件中貌似没有enter事件,然后直接在el-input上写@keyup.enter也没能捕抓到事件,望大神赐教~~
闭关修行中......
@keyup.enter.native
<el-input type="password" v-model="loginForm.password" placeholder="密码" @keyup.enter.native="loginSubmit"></el-input>
@keyup.enter.native就可以触发了
element-ui api中表示 并没有onkeyup这个事件 所以 建议还是换input 如果非得用这个事件的话
同意@CoquettishPoppy的观点,建议撸个原生input吧,样式写个相似的。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <link href="http://cdn.bootcss.com/element-ui/1.2.7/theme-default/index.css" rel="stylesheet" /> </head> <body> <p id="app"> <el-input v-model="input" v-enter @enter.native="log" placeholder="请输入内容"></el-input> </p> <script src="http://cdn.bootcss.com/vue/2.1.0/vue.min.js"></script> <script src="http://cdn.bootcss.com/element-ui/1.2.7/index.js"></script> <script> Vue.directive('enter', { bind: function (el, binding, vnode) { const input = el.getElementsByTagName('input')[0]; input.addEventListener('keypress', function (e) { var key = e.which || e.keyCode; if (key === 13) { // 13 is enter // code for enter el.dispatchEvent(new Event('enter')) } }) }, unbind: function (el, binding, vnode) { } }) new Vue({ el: '#app', data() { return { input: null } }, methods: { log() { console.log(this.input) } } }) </script> </body> </html>
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
@keyup.enter.native
<el-input type="password" v-model="loginForm.password" placeholder="密码" @keyup.enter.native="loginSubmit"></el-input>
@keyup.enter.native就可以触发了
element-ui api中表示 并没有onkeyup这个事件 所以 建议还是换input 如果非得用这个事件的话
同意@CoquettishPoppy的观点,建议撸个原生input吧,样式写个相似的。