zoukankan      html  css  js  c++  java
  • iview中单击行,使得checkbox状态的方法

    直接贴代码,这是一组jquery全选,全不选,反选代码

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <script src="../vue/vue.js"></script>
        <script src="../vue/iview/js/iview.min.js"></script>
        <link rel="stylesheet" href="../vue/iview/css/iview.css">
    </head>
    <body>
    <div id="app">
        <i-table :columns="col" :data="data" @on-row-click="handlerClicked"></i-table>
    </div>
    <script>
        new Vue({
            el: '#app',
            data() {
                return {
                    col: [
                        {
                            align: 'center',
                            title: '选项',
                            key: 'flag',
                            render: (h, params) => {
                                return h('Checkbox', {
                                    props: {
                                        value: params.row.flag
                                    }
                                })
                            }
                        },
                        {
                            title: '姓名',
                            key: 'name'
                        },
                        {
                            title: '年龄',
                            key: 'age'
                        }
                    ],
                    data: [
                        {
                            name: '小明',
                            age: 11,
                            flag: false
                        },
                        {
                            name: '小明1',
                            age: 12,
                            flag: true
                        }
                    ]
                }
            },
            methods: {
                handlerClicked(val) {
                    this.data.forEach(function (item) {
                        let { name, age, flag } = item
                        if (name === val.name && age === val.age && flag === val.flag) {
                            item.flag = !item.flag
                        }
                    })
                }
            }
        })
    </script>
    </body>
    </html>
    

    思路是这样的:

    • 不使用iview默认的type中的selection,使用render函数来渲染checkbox选型。
    • 在data中定义flag来决定checkbox中的状态。
    • 监听row的on-row-click事件,获取当前行的数据,然后依次对data中的数据做对比,然后修改对应row中的flag状态。

    原文地址:https://segmentfault.com/a/1190000012878643

  • 相关阅读:
    运算符
    变量
    JSP EL表达式使用
    MySQL JDBC 连接数据库基本操作
    一个带标号的CSS文章列表写法
    CSS图片列表
    YUI3 CSS
    Ubuntu 13.10 64位 无法 安装 ia32-libs 解决办法
    [转]编译Android源代码常见错误解决办法
    js 复制对象
  • 原文地址:https://www.cnblogs.com/lalalagq/p/9959408.html
Copyright © 2011-2022 走看看