精华内容
下载资源
问答
  • 主要为大家详细介绍了vue实现全选、反选功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 主要为大家详细介绍了vue实现全选和反选功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • vue 实现全选

    2018-06-15 12:06:00
    <p><input type="checkbox" v-model="allSelect"><...全选</span></p> <ul class="dataList"> <li v-for="item,index in getDataList" :key="index"> ...

    html:

    <p><input type="checkbox" v-model="allSelect"><span>全选</span></p>
    <ul class="dataList">
    <li v-for="item,index in getDataList" :key="index">
    <input type="checkbox" v-model="item.show" />
    <span v-text="item.cont"></span>
    </li>
    </ul>
    <p>{{getDataList}}</p>

    js:

    new Vue({
    el: '.app',
    data: {
    dataList: [
    {
    cont: 111,
    },
    {
    cont: 222,
    },
    {
    cont: 333,
    },
    {
    cont: 444,
    },
    {
    cont: 555,
    }
    ]
    },
    computed: {
    getDataList(){
    return this.dataList.map(item=>{
    this.$set(item,'show',false)
    return item
    })
    },
    allSelect: {
    get: function(){
    return this.getDataList.every(item=>item.show)
    },
    set: function(newValue){
    this.dataList.map(item=>this.$set(item,'show',newValue))
    }
    }
    },
    })

    转载于:https://www.cnblogs.com/shenxinze/p/9186747.html

    展开全文
  • 本篇文章主要介绍了vue 实现全选全不选的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • vue实现全选反选

    2019-04-30 14:53:38
    vue实现全选反选按钮 <template> <div class="orderinfo"> <div id="example-3"> <input type="checkbox" id="jack" value="Jack" v-model="checkedNames"> <label for="ja...

     vue实现全选反选按钮

    <template>
      <div class="orderinfo">
        <div id="example-3">
          <input type="checkbox" id="jack" value="Jack" v-model="checkedNames">
          <label for="jack">Jack</label>
          <input type="checkbox" id="john" value="John" v-model="checkedNames">
          <label for="john">John</label>
          <input type="checkbox" id="mike" value="Mike" v-model="checkedNames">
          <label for="mike">Mike</label>
         
        </div>
    
        <div>
          <input type="checkbox" id="checkbox" v-model="checked" 
             @change="allchooseBtn">
          <label for="checkbox"> 全选</label>
        </div>
    
         <!-- <span>选择的项目: {{ checkedNames }}</span>
    
         <span>全选按钮是否选中{{checkbox}}</span> -->
      </div>
    </template>
    
    
    <script>
    export default {
      name: "Orderinfo",
      data() {
        return {
          checked: false,
          checkedNames: []
        };
      },
    
      mounted() {},
      watch: {
        //监听复选按钮里的值   小于3没有全选   否则是全选   
        checkedNames: function(newQuestion, oldQuestion) {
          console.log(newQuestion);
          if (newQuestion.length < 3) {
            this.checked = false;
          } else {
            this.checked = true;
          }
        },
    //不建议用下面的方法
     //监听单选按钮里的值   如果为true表示选中   复选里的值为全部选中的状态   否则清空   
        //checked: function(newQuestion, oldQuestion) {
         // console.log(newQuestion);
         // if (newQuestion) {
          //  this.checkedNames = ["Jack", "John", "Mike"];
          //} else {
          // this.checkedNames = [];
         // }
        },
      },
    
      methods: {
      allchooseBtn() {
          let that = this;
          if (that.checked) {
            that.checkedNames = ["Jack", "John", "Mike"];
          } else {
            that.checkedNames = [];
          }
        }
      }
    };
    </script>
    
    <style scoped lang="scss">
    </style>
    
    

     

    展开全文
  • vue 实现全选和反选

    2020-06-09 01:36:26
    1、vue实现全选和反选,使用vue的computed的set方法实现双向绑定 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-...

    1、vue实现全选和反选,使用vue的computed的set方法实现双向绑定 

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
        <div id="app">
            全选 <input type="checkbox" v-model="checkAll">
    
            <input type="checkbox" v-for="(item,index) in checks" v-model="item.value" :key="index">
        </div>
        <script src="../node_modules/_vue@2.6.11@vue/dist/vue.js"></script>
        <script>
            // methods和watch 没有关系
            let vm=new Vue({
                el:'#app',
                data:{
                   checks:[
                       {value:true},
                       {value:false},
                       {value:true}
                   ]
                },
                methods:{
                  
                },
                computed:{
                    checkAll:{
                        get(){
                            return this.checks.every(check=>check.value);
                        },
                        set(value){  //双向绑定数据  会使用set方法
                            this.checks.forEach(check=>check.value=value);
                        }
                    }
                }
            });
            
        </script>
    </body>
    </html>

    2、vue的生命周期

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
        <div id="app">
            {{a}} {{b}}
        </div>
        <script src="../node_modules/_vue@2.6.11@vue/dist/vue.js"></script>
        <script>
            let vm=new Vue({
                el:'#app',
                data:{
                    a:1,
                    b:1
                },
                beforeCreate(){   // 初始化自己的生命周期,并且绑定自己的事件
                    console.log(this,this.$data)
                },
                created(){  //如果想调用ajax 可以获取数据和调用方法
                    console.log(this.$data);
                },
                beforeMount(){ // 第一次调用渲染函数之前
                    console.log('渲染前');
                },
                mounted(){ //获取真实dom,因为页面已经渲染完了
                    console.log("渲染后",this.$el.innerHTML);
                    this.a=100;
    
                    this.timer=setInterval(() => {
                        
                    }, 3000);
                },
                beforeUpdate(){
                    this.b=200;
                    console.log('更新前');
                },
                updated(){  //一般不要操作数据 可能会导致死循环
                    console.log('更新后');
                },
                beforeDestroy(){ //销毁前  当前实例还可用,
                    clearInterval(this.timer);
                },
                destroyed(){ // 实例上的方法、监听都被移除掉。
    
                }
            });
            // 调用销毁
            //第一种 路由切换;  第二种:手动销毁:vm.$destroy();
        </script>
    </body>
    </html>

      3、vue的全局组件和局部组件

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
        <div id="app">
            <my-button></my-button>
        </div>
        <script src="../node_modules/_vue@2.6.11@vue/dist/vue.js"></script>
        <!--组件化开发的优点  方便协作  方便维护 复用-->
    
        <!--组件的定义 一共有2种 全局组件 局部组件-->
        <script>
            // 全局组件
            /* Vue.component('my-button',{
                template:`<button>{{message}}</button>`,
                data(){ //为了每个组件的数据 互不影响
                    return{
                        message:'点我啊'
                    }
                }
            }); */
            let vm=new Vue({ //根实例
                el:'#app',
                data:{
                    a:1,
                    b:1
                },
                components:{  //子组件在父组件的模板中使用
                    'myButton':{
                        template:`<button>{{message}}</button>`,
                        data(){ //为了每个组件的数据 互不影响
                            return{
                                message:'点我啊'
                            }
                        }
                    }
                }
            });
        </script>
    </body>
    </html>

    4、vue中的 computed

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
        <div id="app">
            {{getFullName}}
            {{msg}}
        </div>
        <script src="../node_modules/_vue@2.6.11@vue/dist/vue.js"></script>
        <script>
    
            // computed 和 methods 的区别  computed有缓存
            // computed 和 watch的区别 watch支持异步 watch可以实现一些简单的功能,先用计算属性来实现。
            let vm=new Vue({
                el:'#app',
                data:{
                    firstName:'hello',
                    lastName:'world',
                    msg:'vue,',
                    fullName:''
                },
                computed:{
                    getFullName(){   //Object.defineProperty 来实现
                        console.log('哈哈哈');  //get方法
                        return this.firstName+this.lastName
                    }
                },
                mounted(){
                    this.fullName();
                },
                methods:{
                    getFullName(){
                        this.fullName=this.firstName+this.lastName
                    }
                },
                watch:{
                    firstName:{
                        handler(newValue){
                            setTimeout(() => {
                                this.getFullName();
                            }, 1000);
                        },
                        immediate:true,  //立即执行 可以不再mounted里面先调用一次
                        deep:true,
                    },
                    lastName(){
                        this.getFullName();
                    }
                }
            });
            // 调用销毁
            //第一种 路由切换;  第二种:手动销毁:vm.$destroy();
        </script>
    </body>
    </html>

     

    展开全文
  • vue实现全选效果

    2017-04-22 21:30:00
    vue实现全选效果 接触vue快半年了,记得刚用vue做项目的时候遇到一个全选功能,当时到处百度也没有找到怎么实现,最后还是用了jquery进行dom操作实现的。 今天没事就顺手写了一个,感觉很简单,js代码也就十几行就...

    vue实现全选效果

       接触vue快半年了,记得刚用vue做项目的时候遇到一个全选功能,当时到处百度也没有找到怎么实现,最后还是用了jquery进行dom操作实现的。
    今天没事就顺手写了一个,感觉很简单,js代码也就十几行就实现了,废话不多说亮代码。
    
    ```
      html
        <div id='app' class='container'>
        <input type="checkbox" name="" id="allId" v-model="allData.parCheck" @change="allSelect()">
        <label for="allId">{{allData.text}}</label> {{allData.parCheck}}
        <ul>
            <li v-for="item in checkData">
                <input type="checkbox" name="" @change="singleSelect()" v-model="item.isCheck" :id="item.id">
                <label :for="item.id">{{item.value}}</label> {{item.isCheck}}
            </li>
        </ul>
       </div>
    
        js
     var app = new Vue({
        el: '#app',
        data: {
        allData: {
            parCheck: false,
            text: '全选'
        },
        checkData: [{
            id: '1',
            value: '香蕉',
            isCheck: false
        }, {
            id: '2',
            value: '苹果',
            isCheck: false
        }, {
            id: '3',
            value: '梨子',
            isCheck: false
        }, {
            id: '4',
            value: '菠萝',
            isCheck: false
        }, {
            id: '5',
            value: '西瓜',
            isCheck: false
        }]
     },
     methods: {
        allSelect() {
            var vm = this;
            vm.checkData.forEach(item => {
                item.isCheck = vm.allData.parCheck
            })
        },
        singleSelect() {
            var vm = this;
            var selectData = vm.checkData.filter(item => {
                return item.isCheck == true
            })
    
            selectData.length == vm.checkData.length ? vm.allData.parCheck = true : vm.allData.parCheck = false;
        }
     }
    })
    
    注:在此遇到一个坑vue2里面现在已经不允许将选择器绑定到html或body上了

    ```

    转载于:https://www.cnblogs.com/lijinblogs/p/6749599.html

    展开全文
  • 接触vue快半年了,记得刚用vue做项目的时候遇到一个全选功能,当时到处百度也没有找到怎么实现,最后还是用了jquery进行dom操作实现的。今天没事就顺手写了一个,感觉很简单,js代码也就十几行就实现了,废话不多说...
  • 导语:Vue中单选下拉框开发起来非常简单,直接select包裹一个带v-for的option即可但是当我们想做个带多选的下拉框该怎么办呢?最简方法是什么?比如下面这个图:如果网上搜的话,搜的是一堆带children的 ,那种是遍历tree的...
  • Vue实现全选,反选,全不选 在vue中实现默认选中以及获取单选/复选框的value值都会用到同一个方法,那就是在data中定义一个数组,然后用v-model=“这个数组” data: { whoms:[1,2], } 这样就会默认选中value值是1...
  • 本篇文章主要介绍了vue 实现全选全不选的示例代码,现在分享给大家,也给大家做个参考。一起过来看看吧全选功能可以说是前端开发中非常常见的一个功能,以前的项目开发用jQuery开发比较多。最近在使用vue前端框架...
  • Vue实现全选和反选

    2020-09-28 10:12:32
    Vue实现搜索功能 思路 // 全选和反选思路 //首先给全选按钮写一个点击事件,绑定一个变量默认为false, //创建一个空的数组,在循环里面用v-model绑定,在用:value=id或者下标; //在全选点击事件中,if判断当按钮为...
  • vue 实现 全选反选

    2020-07-08 14:34:20
    <body> <div id="app"> <...全选</p> <template v-for="s in isChecks"> <input type="checkbox" name="one" :checked="s.isCheck" @click="checkOne(s.id)
  • vue实现全选和反选

    2020-01-13 10:08:25
    一、页面处理 1.全选 2单选 url中的图片是必须的(以下图片) ...index是dataList数据循环的索引,如果你有不会重复的id,可以将id作为参数传入进去进行保存,更加简单...二、vue处理 1.全选 2.单选 ...
  • vue中,经常会遇到类似于全选与反选的功能,这里列举几个实现全选反选的几种方法
  • VUE实现全选和单选

    2020-07-12 17:38:37
    效果图: 单选 全部选中 HTML代码: <div class="hello">...input type="checkbox" id="allCheck" @click="checkAll" v-model="checkIsAll">...全选</label> </div> <ul> &l
  • Vue实现全选反选功能

    千次阅读 2018-04-28 13:35:34
    2、定义一个空数组B,把请求到的数据赋值给这个数组。...3、判断A和B的长度是否相等来实现全选和反选。 下面贴出全部代码 <template> <div> <input type='checkbox' class='input...
  • vue实现全选 单选功能

    千次阅读 2018-11-17 15:42:44
    实现效果 待选 全选 单选 多选 代码 1.页面结构 2.逻辑代码 3.binggo 就这么愉快的完成了
  • vue实现全选/单选

    2021-01-18 16:56:38
    //未开票单选 selectedTap(item, index) { if (typeof item.isChecked == 'undefined') { this.$set(item, 'isChecked', true); } else { item.isChecked = !item.isChecked;... } //单选 //全选 全选

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 708
精华内容 283
关键字:

vue实现全选

vue 订阅