你听我跟你说,W3C有两条规定:
规定一:
当一个form元素中只有一个输入框时,在该输入框中按下回车,会提交该form表单。
规定二:
当一个form元素中只有一个button(原生的button)时,即使不绑定事件,点击该button也会提交表单。
问题一:点击回车,浏览器自动刷新
在实际应用中,我们发现了一个大问题,那就是表单组件中按回车的时候,浏览器竟然莫名其妙的刷新了。如果想要阻止这一个默认行为,我们只需要在标签上添加 @submit.native.prevent 即可(真是个天才)。
<el-form :model="newForm" @submit.native.prevent>
<el-form-item label="目录名称" prop="dir_name">
<el-input v-model="newForm.dir_name"></el-input>
</el-form-item>
</el-form>
需求一:点击回车,提交表单
问题解决了,点击回车不会刷新浏览器,但是也没有提交表单呀,W3C玩弄你我的感情。此时如果仍要在表单中增加回车提交事件,就需要同时添加两个手段:
@submit.native.prevent 和 @keyup.enter.native
<el-form @submit.native.prevent>
<el-form-item>
<el-input @keyup.enter.native="search"></el-input>
</el-form-item>
</el-form>
至于为什么要加 .native修饰符,那是因为 element-UI 对 input 做了封装。
嘿,解决!
2113

被折叠的 条评论
为什么被折叠?



