Vant3——复选框点击其他后格外出现一个输入框

简介: 复选框点击其他后格外出现一个输入框

想要实现这样的效果:

c681d04413f04638ba0d0189c01ff784.png

15c1432801104464b3bbba7837be3824.png

方法如下:

因为复选框选出来的值为数组形式所以直接通过map进行循环遍历即可

<van-field :name="'checkbox_ZL_'+i" label="接受过的治疗">
  <template #input>
  <van-checkbox-group v-model="checkboxZL" direction="horizontal" @click="btnCheckbox">
    <van-checkbox name="骨科手术" shape="square">骨科手术</van-checkbox>
    <van-checkbox name="物理治疗" shape="square">物理治疗</van-checkbox>
    <van-checkbox name="手法治疗" shape="square">手法治疗</van-checkbox>
    <van-checkbox name="关节内注射治疗" shape="square">关节内注射治疗</van-checkbox>
    <van-checkbox name="其他" shape="square">其他</van-checkbox>
  </van-checkbox-group>
  </template>
</van-field>
<!-- 接受过的治疗(其他) -->
<div v-if="arrs == true">
 <van-field required label="其他" v-model="others" name="others" placeholder="请填写具体内容" />
</div>
const listData = reactive({
  checkboxZL:[],
  others:"",
  arrs:false
})
const btnCheckbox= () => {
  /* 把listData.checkboxZL数组定义出来 */
      let arr:any = listData.checkboxZL;
      console.log(arr);
      /* 防止默认没长度的时候会出错,默认就让他不出现 */
      if (arr.length == 0) {
        arrs.value = false;
      }
      /* 通过map遍历出arr的新数组 */
      arr.map((item: any) => {
        console.log(arr);
  /* 查找勾选的选项是否有存在其他?如果存在则让他显示出文本框,否则就隐藏 */
        if (arr.indexOf("其他") !== -1) {
          arrs.value = true;
        } else {
          arrs.value = false;
        }
      });
    };
    return{
    ...toRefs(listData),
    arrs,
    btnCheckbox,
    }

8ac96176ffc243a2b608d92078d1bc05.png

a16defcd0e59494f973adbd388d0aa3c.png

相关文章
|
6月前
解决点击button按钮会刷新页面的问题
解决点击button按钮会刷新页面的问题
44 0
|
6月前
|
JavaScript
uniapp中复选框的使用
uniapp中复选框的使用
310 0
|
3月前
点击全选获取所有复选框
点击全选获取所有复选框
27 1
|
JavaScript
ant design vue 设置表格选择框,全选按钮选不全
ant design vue 设置表格选择框,全选按钮选不全
1558 0
|
3月前
点击全选,使所有复选框被选中
点击全选,使所有复选框被选中
45 0
|
6月前
|
JavaScript
elementUI/Plus 输入框按回车刷新页面分析与解决
elementUI/Plus 输入框按回车刷新页面分析与解决
elementUI/Plus 输入框按回车刷新页面分析与解决
|
4月前
|
JavaScript
vue element MessageBox.prompt this.$prompt组件禁止显示右上角关闭按钮,取消按钮,及点击遮罩层关闭
vue element MessageBox.prompt this.$prompt组件禁止显示右上角关闭按钮,取消按钮,及点击遮罩层关闭
83 0
|
6月前
点击div显示下拉框,然后下拉框中的点击事件不生效。
点击div显示下拉框,然后下拉框中的点击事件不生效。
|
6月前
|
JavaScript API
Element Plus组件库中的input组件如何点击查看按钮时不可编辑,点击编辑时可编辑使用setup
Element Plus组件库中的input组件如何点击查看按钮时不可编辑,点击编辑时可编辑使用setup
137 0
点击按钮,新增输入框,再点击按钮,删除输入框
点击按钮,新增输入框,再点击按钮,删除输入框
53 0