搜索框展开、关闭

搜索框展开、关闭

 <el-row class="Jcommon-search-box" :gutter="16">
        <el-form
          :model="queryParams"
          ref="queryForm"
          size="small"
          :inline="true"
          v-show="showSearch"
          label-width="68px"
        >
        
          <el-col :span="6">
            <el-form-item
              label="适用合同类型"
              prop="contractType"
              label-width="88"
            >
              <el-cascader
                popper-class="popper"
                v-model="queryParams.contractType"
                :options="contractTypeDropDownData"
                :props="{
                  children: 'children',
                  label: 'name',
                  value: 'id',
                  checkStrictly: true,
                }"
                clearable
              ></el-cascader>
            </el-form-item>
          </el-col>
           
            通过 searchBtnShow 来判断是否需要收起/展开
          <el-col :span="6" v-if="searchBtnShow">
            <el-form-item label="创建时间" prop="createTime">
              <el-date-picker
                v-model="queryParams.createTime"
                size="small"
                style="width: 100%"
                value-format="yyyy-MM-dd"
                type="daterange"
                range-separator="-"
                start-placeholder="开始日期"
                end-placeholder="结束日期"
              ></el-date-picker>
            </el-form-item>
          </el-col>
            
            展开/收起的按钮
          <el-col :span="6">
            <el-form-item>
              <el-button type="text" size="mini" @click="showAllBtn">
                {{ searchBtnText }}
                <i
                  class="el-icon-arrow-down el-icon--right"
                  v-if="!searchBtnShow"
                ></i>
                <i
                  class="el-icon-arrow-up el-icon--right"
                  v-if="searchBtnShow"
                ></i>
              </el-button>
              <el-button
                type="primary"
                icon="el-icon-search"
                size="mini"
                @click="handleQuery"
                >搜索</el-button
              >
              <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
                >重置</el-button
              >
            </el-form-item>
          </el-col>
        </el-form>
      </el-row>

展开/收起按钮 

<el-button type="text" size="mini" @click="showAllBtn">
     {{ searchBtnText }}
      <i class="el-icon-arrow-down el-icon--right"
          v-if="!searchBtnShow">
      </i>
      <i class="el-icon-arrow-up el-icon--right"
          v-if="searchBtnShow">
      </i>
</el-button>
data里面

//查询条件显示
searchBtnText: "展开",
searchBtnShow: false,
showAllBtn() {
   if (this.searchBtnShow) {
       this.searchBtnText = "展开";
       this.searchBtnShow = false;
   } else {
       this.searchBtnText = "收起";
       this.searchBtnShow = true;
   }
}

  • 14
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当我们在网页的搜索框输入关键词时,通常会联想到自动完成或下拉菜单来帮助我们选择更精确的搜索条件。在使用JavaScript编写的搜索框中,我们可以通过以下方法实现点击搜索框展开下拉菜单,点击外面关闭下拉菜单的效果。 首先,我们需要为搜索框添加一个点击事件,当点击搜索框时,触发展开下拉菜单的功能。我们可以使用事件监听器或者直接在搜索框的HTML属性中添加onclick事件。 ``` var searchInput = document.getElementById("search-input"); var dropdownMenu = document.getElementById("dropdown-menu"); // 点击搜索框展开下拉菜单 searchInput.onclick = function() { dropdownMenu.style.display = "block"; }; ``` 接下来,我们需要在网页的其他区域添加一个点击事件,当点击其他区域时,触发关闭下拉菜单的功能。我们可以利用事件冒泡特性来判断用户是否点击了下拉菜单以外的区域。 ``` // 点击外面关闭下拉菜单 document.onclick = function(event) { if (event.target !== searchInput && event.target !== dropdownMenu) { dropdownMenu.style.display = "none"; } }; ``` 在上述代码中,我们使用了事件对象的target属性来获取触发事件的元素,如果该元素不是搜索框和下拉菜单,就将下拉菜单隐藏起来。 通过以上代码,我们实现了当用户点击搜索框展开下拉菜单,点击搜索框以外的区域时关闭下拉菜单的效果。这样用户可以方便地选择搜索条件,并能够自由地关闭下拉菜单,提升了用户的搜索体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值