页面表格数据实时更新时不能影响搜索框输入

文章讨论了在用户输入时如何避免数据更新干扰操作的问题。通过添加input监听,当用户输入时暂停定时更新,输入完成后恢复,实现了更友好的交互体验。使用setTimeout和setInterval来控制数据刷新的时机。
摘要由CSDN通过智能技术生成

需求:更新数据时走接口虽然只是局部更新,但会在客户输入时影响客户操作,失去焦点,所以改进的时候想着加一个input监听客户输入,在用户不输入时继续正常更新表格数据,当监听到用户输入时停止更新

页面展示:

html代码

<div id="school-search" class="_searchBtn">
                <input type="text" id="txtSurveyName" @keydown="searchData" v-model="txtSurveyName" placeholder="请输入调研名称" name="name"/>
                <div @click="search()">
                    <img src="/images/search.png" alt="搜索">
                </div>
            </div>

            <div>
                <div>
                    <select id="selIntervalTime" @change="refresh()">
                        <option value="">手动刷新</option>
                        <option value="10">10秒</option>
                        <option value="20">20秒</option>
                        <option value="30">30秒</option>
                        <option value="60">60秒</option>
                    </select>
                </div>
        </div>

js代码

 // 监听输入框
        searchData(){
            if(this.searchTime !== null || this.interval != null){
                clearTimeout(this.searchTime);
                clearInterval(this.interval);
            }
            this.searchTime = setTimeout(() => {
                //业务实现语句
                this.refresh()
            })
        },
        // 刷新
        refresh() {
            var nIntervalTime = $("#selIntervalTime").val();
            if (nIntervalTime != "") {
                this.interval = setInterval(this.search, nIntervalTime * 1000);
            } else {
                if (this.interval != null) {
                    this.interval = null;
                    clearInterval(this.interval);
                }
                // this.search();
            }
        },

这样算是取巧实现了吧,暂时也没想到其他啥好的解决想法.

内容仅供参考,如有问题请指出.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阁下呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值