js css htmlelementUI

el-form的el-input 输入框按回车页面刷新问题

2022-10-28  本文已影响0人  刘其瑞

1、问题:当页面只有一个输入框时,获取焦点时,点击回车整个页面被刷新了

<el-form :model="Form" label-width="100px">
    <el-form-item label="名称">
        <el-input v-model="Form.name"></el-input>
    </el-form-item>
</el-form>

上面的结构是正常的,但是当输入框获取焦点,并回车后。整个页面都被刷新了,这并不是我们希望的。

2、问题根源

Element-ui->>查看element-ui官网我可以发现以下这段话,
W3C 标准中有如下规定:

When there is only one single-line text input field in a form, the user agent should accept Enter in that field as a request to submit the form.

即:当一个 form 元素中只有一个输入框时,在该输入框中按下回车应提交该表单。如果希望阻止这一默认行为,可以在 <el-form> 标签上添加 @submit.native.prevent

<el-form :model="Form" label-width="100px" @submit.native.prevent>
    <el-form-item label="名称">
        <el-input v-model="Form.name"></el-input>
    </el-form-item>
</el-form>

这是标准所规定的,我们添加后就可以避免刷新了。平时看form组件时也没注意到这个内容,以后注意就好了。

上一篇下一篇

猜你喜欢

热点阅读