温馨提示×

温馨提示×

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

密码登录×
  • 忘记密码?
登录注册×
获取短信验证码
其他方式登录
点击 登录注册 即表示同意 《亿速云用户服务条款》
  • 服务器
  • 数据库
  • 开发技术
  • 网络安全
  • 互联网科技
登 录 注册有礼
最新更新 网站标签 地图导航
产品
  • 首页 > 
  • 教程 > 
  • 开发技术 > 
  • avue如何实现自定义搜索栏及清空搜索事件

avue如何实现自定义搜索栏及清空搜索事件

发布时间:2021-12-14 11:34:55 来源:亿速云 阅读:3466 作者:iii 栏目: 开发技术

这篇文章主要介绍“avue如何实现自定义搜索栏及清空搜索事件”,在日常操作中,相信很多人在avue如何实现自定义搜索栏及清空搜索事件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”avue如何实现自定义搜索栏及清空搜索事件”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

对搜索栏进行自定义,并通过按钮实现折叠搜索栏效果。自定义效果如下:

折叠前:

avue如何实现自定义搜索栏及清空搜索事件

折叠后:

avue如何实现自定义搜索栏及清空搜索事件

1、自定义搜索栏内容

其实也简单,只要在对应的vue文件中\src\views\admin\sysxxfsjl.vue对template 设置slot-scope="scope"和 slot="search"属性即可自定义搜索栏内容:

<template slot-scope="scope" slot="search">
                  <el-form ref="form" :model="searchForm"  label-width="100px">
                    <el-row>
                      <el-form-item label="主题:">
                        <el-input v-model="searchForm.xxbt"  @change="getList()"></el-input>
                      </el-form-item>
                      <el-form-item label="发送人:">
                        <el-cascader
                          v-model="fsrid"
                          :options="options"
                          clearable
                          
                          :props="{ expandTrigger: 'hover' }"
                          @change="getList()"></el-cascader>
                      </el-form-item>
                    </el-row>
                    <el-row v-show="moreshow">
                      <el-form-item label="发送时间:">
                        <el-date-picker
                          
                          v-model="timeSlot"
                          type="daterange"
                          align="right"
                          unlink-panels
                          format="yyyy-MM-dd HH:mm:ss"
                          value-format="yyyy-MM-dd HH:mm:ss"
                          range-separator="至"
                          start-placeholder="开始日期"
                          end-placeholder="结束日期"
                          :picker-options="pickerOptions"
                          @change="getList()">
                        </el-date-picker>
                      </el-form-item>
                      <el-form-item label="方式:" >
                        <el-radio-group v-model="searchForm.fsfs" size="small"  @change="getList()">
                          <el-radio-button label="4">系统消息</el-radio-button>
                          <el-radio-button label="1">手机短信</el-radio-button>
                          <el-radio-button label="3">微信发送</el-radio-button>
                        </el-radio-group>
                      </el-form-item>
                    </el-row>
                    <el-row v-show="moreshow">
                      <el-form-item label="阅读状态:">
                        <el-radio-group v-model="sfyd" size="small"  @change="getList()">
                          <el-radio-button label="2">所有</el-radio-button>
                          <el-radio-button label="1">已读</el-radio-button>
                          <el-radio-button label="0">未读</el-radio-button>
                        </el-radio-group>
                      </el-form-item>
                      <el-form-item label="是否转待办:">
                        <el-radio-group v-model="checkList"  @change="getList()">
                          <el-radio-button label="1">是</el-radio-button>
                          <el-radio-button label="0">否</el-radio-button>
                        </el-radio-group>
                      </el-form-item>
                    </el-row>
                  </el-form>
                </template>

搜索按钮 调用的是getList中的方法,给表格赋值数据

getList(page, params) {
              this.tableData=[]
                if (this.timeSlot && this.timeSlot.length == 2) {//发送时间
                  this.searchForm.startTime = this.timeSlot[0].replace(/\+/g, ' ')
                  this.searchForm.endTime = this.timeSlot[1].replace(/\+/g, ' ')
                }else {
                  delete this.searchForm.startTime
                  delete this.searchForm.endTime
                }
                if (this.fsrid.length){//发送人
                  this.searchForm.fsrid = this.fsrid[this.fsrid.length-1]
                }else {
                  delete this.searchForm.fsrid
                }
                if (this.sfyd.length>0){//是否转待办
                  if (this.sfyd== 1){
                    this.searchForm.sfyd = 1
                  }else if (this.sfyd== 0){
                    this.searchForm.sfyd = 0
                  }else {
                    delete this.searchForm.sfyd
                  }
                }else {
                  delete this.searchForm.sfyd
                }
                if (this.checkList!=''){//是否转待办
                  if (this.checkList== '1'){
                    this.searchForm.sfdb = 1
                  }else {
                    this.searchForm.sfdb = 0
                  }
                }else {
                  delete this.searchForm.sfdb
                }
                if (!page) {
                  page = this.page
                }
                this.tableLoading = true
                fetchList(Object.assign({
                    current: page.currentPage,
                    size: page.pageSize
                }, params, this.searchForm )).then(response => {
                  for(var i=0;i<response.data.data.records.length;i++){
                    response.data.data.records[i].checkbox=[]
                    if(response.data.data.records[i].sfyd==0){
                      response.data.data.records[i].checkbox.push(' 未读')
                    }else{
                      response.data.data.records[i].checkbox.push(' 已读')
                    }
                    if(response.data.data.records[i].sfdb==1){
                      response.data.data.records[i].checkbox.push(' 待办')
                    }
                    if(response.data.data.records[i].sfsc==1){
                      response.data.data.records[i].checkbox.push(' 收藏')
                    }
                    if(response.data.data.records[i].sfhf==1){
                      response.data.data.records[i].checkbox.push(' 已回')
                    }
                    if(response.data.data.records[i].xxfjmc){
                      response.data.data.records[i].xxfjmc=response.data.data.records[i].xxfjmc.split(',')
                    }else{
                      response.data.data.records[i].xxfjmc=[]
                    }
                    this.tableData.push(response.data.data.records[i])
                  }
                    this.page.total = response.data.data.total
                    this.tableLoading = false
                }).catch(() => {
                    this.tableLoading=false
                })
            },

2、自定义搜索按钮

template 设置slot-scope="scope"和 slot="searchMenu"属性即可自定义搜索按钮,加上更多按钮:

<template slot-scope="scope" slot="searchMenu">
                  <el-button v-if="moreshow" type="success" class="el-button--small" icon="el-icon-caret-top" @click="getmoreshow(1)">隐藏</el-button>
                  <el-button v-else class="el-button--small" icon="el-icon-caret-bottom" @click="getmoreshow(2)">更多</el-button>
                </template>

更多、隐藏按钮调用方法对搜索项进行显隐

getmoreshow(type){
            if(type==1){
              this.moreshow=false
            }else{
              this.moreshow=true
            }
          },

清空按钮 需在avue-crud上增加@search-reset事件。进行清空选项内容并调用this.getList(this.page);

avue如何实现自定义搜索栏及清空搜索事件

//搜索清空按钮事件
            searchReset(){
              this.searchForm = {}
              this.searchForm.sfyd = ''
              if (this.searchForm.sfyd!=''){//是否转待办
                if (this.searchForm.sfyd== '1'){
                  this.searchForm.sfyd = 1
                }else {
                  this.searchForm.sfyd = 0
                }
              }else {
                delete this.searchForm.sfyd
              }
              this.fsrid = []
              this.timeSlot = []
              this.checkList = ''
              this.sfyd = ''
              this.$refs.crud.toggleSelection();
              this.getList(this.page);
            },

到此,关于“avue如何实现自定义搜索栏及清空搜索事件”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节
推荐阅读:
  1. js如何实现搜索栏效果
  2. DEDE集成搜索栏的方法介绍

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

avue
  • 上一篇新闻:
    docker源码分析Libcontainer
  • 下一篇新闻:
    UML实例之ATM状态图、活动图和协作图的示例分析

猜你喜欢

  • rstudio如何保存脚本文件
  • tomcat报404错误的原因有哪些
  • 虚拟主机内存满了怎么解决
  • 虚拟主机的弊端有哪些
  • r语言如何计算矩阵的行列式
  • r语言变量类型如何查看
  • r语言清除所有变量的方法有哪些
  • Dom4j的作用有哪些
  • waitpid使用时出现EINTER错误怎么解决
  • css文字渐变色效果怎么实现
最新资讯
  • 如何利用CoreMotion获取和使用设备运动数据
  • UIKit中如何实现一个支持手势操作的相册浏览器
  • UIKit中如何管理多个网络请求并处理它们的响应
  • UIKit中如何为iOS应用实现自定义的视频播放器界面
  • UIKit中如何优化和处理大量数据的动态加载和显示
  • 如何使用UIPresentationController定制模态视图的呈现方式
  • UIKit中如何在UIKit应用中集成机器视觉功能
  • 如何通过UIKit实现类似Photos app的图片选择器
  • UIKit中如何为视图添加阴影和光泽效果以增强视觉效果
  • 如何利用新的Swift语言特性来改善UIKit代码的结构和性能
相关推荐
  • html5中怎样制作搜索栏
  • HTML怎么定义搜索栏
  • 怎么在Android Studio中实现一个搜索栏
  • 怎么在Vue中利用Vant实现顶部搜索栏
  • 如何在Vue中利用Vant实现顶部搜索栏
  • 搜索栏不支持https怎么解决
  • HTML搜索栏的代码怎么写
  • win11搜索栏如何使用
  • win10搜索栏怎么关闭
  • 如何缩短win10搜索栏图文

相关标签

vue组件 vuejs7 vue2 vue2.x vue3.0 vue路由 vue2.0 vue项目 vue-video-player app.vue vuecli3 vue2.5 vue.extend vue.set() vue-cli2.x vue-cli2 vue-pdf vue-loader ant design vue Vue CLI
AI

PHP网站源码光明seo通化模板推广公司咸阳百度网站优化排名多少钱哈尔滨网页制作多少钱鹤岗模板网站建设潮州网络广告推广哪家好德阳SEO按天收费推荐金华SEO按天扣费哪家好霍邱网站建设设计公司辽阳网络推广公司锦州模板网站建设公司鹤壁网站推广工具价格保山网站优化推广公司榆林百度关键词包年推广价格双龙至尊标王公司舟山网站优化按天计费报价上饶英文网站建设价格横岗建站哪家好民治网站排名优化哪家好宝安网站改版哪家好恩施seo网站优化推荐南通网站改版价格伊犁SEO按天计费公司滨州百度网站优化报价永新seo公司黄山推广网站哪家好济源品牌网站设计白山网站优化按天收费多少钱德州建站哪家好民治seo排名报价歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化