zoukankan      html  css  js  c++  java
  • 投票前端全部逻辑

    let form_lock = false;
    function layer_msg(msg,time = 2) {
        layer.open({
            content: msg
            , skin: 'msg'
            , time: time //2秒后自动关闭
        });
    }
    
    
    // 查看排行榜
    $(".vote-rank").on('click', function () {
        var id = $('#vote_id').val();
        window.location.href = '/wx.php/Index/rank?id=' + id;
    });
    
    // 查看事迹
    $(".view-btn").on('click', function () {
        var id = $(this).data('id');
        window.location.href = '/wx.php/Index/detail?option_id=' + id;
        return false; // 不触发父div点击事件
    });
    
    // 发起投票
    $(".vote-btn").on('click', function () {
        var vote_id = $('#vote_id').val();
        var openid = $('#openid').val();
        // 获取勾选的候选人id
        var select_count = $('.select').length;
        if (select_count == 0) {
            layer_msg('请勾选候选者');
            return false;
        }
    
        var vote_option_ids = '';
        $(".select").each(function (index) {
            if (vote_option_ids == '') {
                vote_option_ids += ',' + $(this).data('id') + ',';
            } else {
                vote_option_ids += $(this).data('id') + ',';
            }
        });
    
        if (form_lock) {
            // 请勿重复提交
            layer_msg('请勿重复提交');
            return false;
        } else {
            // 上锁
            form_lock = true;
            $.ajax({
                type:'POST',
                url: '/wx.php/Index/ajaxVoteData',
                data: {
                    vote_id:vote_id,
                    openid:openid,
                    vote_option_ids:vote_option_ids
                },
                dataType: 'json',
                timeout: 3000,
                async: true, //所有请求均为异步。如果需要发送同步请求
                cache: false, //浏览器是否应该被允许缓存GET响应。
                context: $('body'),
                success: function (res) {
                    // form_lock = false;
                    if (res.errno == 0) {
                        layer_msg('投票成功');
                        setTimeout(function(){
                            window.location.reload();
                        }, 2000);
                    } else {
                        layer_msg(res.errdesc);
                    }
                },
                error: function () {
                    form_lock = false;
                    layer_msg('请求失败,请重试');
                }
            })
        }
    });
    
    // 勾选候选人
    $(".option-item").on('click', function () {
        var can_vote = $('#can_vote').val();
        if (can_vote == 0) {
            return false;
        }
    
        // 获取已勾选的候选人数量
        var person_count = $('#person_count').val();
        var select_count = $('.select').length;
    
        if ($(this).hasClass('select')) {
            $(this).removeClass('select');
        } else {
            if (person_count == 1) {
                $('.select').removeClass('select');
            } else {
                if (select_count >= person_count) {
                    layer_msg('每次投票最多投' + person_count + '人');
                    return false;
                }
            }
            $(this).addClass('select');
        }
    });
    
  • 相关阅读:
    org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.MavenProject, org.apache.maven.archiver.MavenArchiveConfiguration)
    快速制作gif动图
    Linux中安装Oracle11g后出现监听的问题及解决办法
    navicat连接不上Linux服务器上的MySQL
    lapacke svd实例
    ubuntu lapack安装与使用
    python numpy访问行列元素的方法
    numpy opencv matlab eigen SVD结果对比
    相似变换 SimilarityTransform 以及skimage源码
    OpenCV仿射变换+投射变换+单应性矩阵
  • 原文地址:https://www.cnblogs.com/jiqing9006/p/13578976.html
Copyright © 2011-2022 走看看