温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Vue怎么实现按回车键进行搜索

发布时间:2023-01-16 09:27:08 来源:亿速云 阅读:148 作者:iii 栏目:开发技术

这篇“Vue怎么实现按回车键进行搜索”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue怎么实现按回车键进行搜索”文章吧。

    Vue按回车键进行搜索

    需求:

    为了用户方便进行搜索数据的时候不想点击搜索按钮,想要在input输入框内输入完成之后直接按回车键进行搜索

    第一种方法

    在input标签内部增加@keyup.enter事件即可,事件名为按钮点击名称

    <div class="center">
          <input placeholder="输入名称" v-model="keyword"
                 @keyup.enter="getsearchdata">
    </div>
    <div class="seal" @click="getsearchdata">搜索</div>

    第二种方法

    <div class="center">
          <input placeholder="输入名称" v-model="keyword"
           @keyup.enter.native="getsearchdata" @submit.native.prevent
          >
    </div>
    <div class="seal" @click="getsearchdata">搜索</div>

    注:

    @keyup.enter.native="getsearchdata"//这里要和搜索的事件名称一样
    
    @submit.native.prevent //这句话禁止第一次进入页面回车搜索的时候刷新页面

    这两种方法,都能实现按回车键进行搜索的功能

    Vue使用回车键失效的解决

    在用Vue开发一个前端页面,做的一个搜索功能,目标:输入搜索条件后,回车键直接搜索。但是得到的结果却是系统刷新,并没有搜索。这是为啥呢?对比了其他文件,代码没有错,一脸懵。后来查阅资料才发现错误,下面介绍解决方法~

    Vue回车键事件

    对于原生的Vue来说,要绑定回车(enter)事件,只需要:

    @keyup.enter="方法名"

    而如果用了类似于Element UI之类的第三方UI框架的话,则得在后面加【.native】修饰符:

    @keyup.enter.native="方法名"

    栗子

    <el-form-item label="名称" prop="taskName">
            <el-input
              v-model="queryParams.taskName"
              placeholder="请输入名称"
              clearable
              size="small"
              @keyup.enter.native="handleQuery"
            />
    </el-form-item>
     
    <el-form-item>
        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
    </el-form-item>

    回车失效原因

    查考相关文档得知:

    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。 

    Vue怎么实现按回车键进行搜索

    解决方法

    <el-form> 标签上添加 @submit.native.prevent。
    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px" @submit.native.prevent>
    • @submit: 表单提交

    • .native 绑定系统原生事件

    • .prevent 提交以后不刷新页面

    以上就是关于“Vue怎么实现按回车键进行搜索”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    vue
    AI