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');
}
});