You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

281 lines
8.9 KiB
JavaScript

var USER_URL="";
$(function(){
$("#goTop").click(function(){$('html, body').animate({scrollTop: 0}, 600);});
//全选的实现
$(".check-all").click(function(){
$('.ids').prop("checked", this.checked);
});
$(".ids").click(function(){
var option = $(".ids");
option.each(function(i){
if(!this.checked){
$(".check-all").prop("checked", false);
return false;
}else{
$(".check-all").prop("checked", true);
}
});
});
//ajax get请求
$('.ajax-get').click(function(){
var target;
var that = this;
if ( $(this).hasClass('confirm') ) {
if(!confirm('确认要执行该操作吗?')){
return false;
}
}
if ( (target = $(this).attr('data-href')) || (target = $(this).attr('url')) || (target = $(this).attr('href')) ) {
$.get(target).success(function(data){
if (data.status==1) {
if (data.url) {
updateAlert(data.info + ' 页面即将自动跳转~','alert-success');
}else{
updateAlert(data.info,'alert-success');
}
setTimeout(function(){
if (data.url) {
location.href=data.url;
}else if( $(that).hasClass('no-refresh')){
$('#top-alert').find('button').click();
}else{
location.reload();
}
},1500);
}else{
updateAlert(data.info);
setTimeout(function(){
if (data.url) {
location.href=data.url;
}else{
$('#top-alert').find('button').click();
}
},1500);
}
});
}
return false;
});
//ajax post submit请求
$('.ajax-post').click(function(){
var target,query,form;
var target_form = $(this).attr('target-form');
var that = this;
var nead_confirm=false;
if( ($(this).attr('type')=='submit') || (target = $(this).attr('href')) || (target = $(this).attr('url')) ){
form = $('.'+target_form);
if ($(this).attr('hide-data') === 'true'){//无数据时也可以使用的功能
form = $('.hide-data');
query = form.serialize();
}else if (form.get(0)==undefined){
return false;
}else if ( form.get(0).nodeName=='FORM' ){
if ( $(this).hasClass('confirm') ) {
if(!confirm('确认要执行该操作吗?')){
return false;
}
}
if($(this).attr('url') !== undefined){
target = $(this).attr('url');
}else{
target = form.get(0).action;
}
query = form.serialize();
}else if( form.get(0).nodeName=='INPUT' || form.get(0).nodeName=='SELECT' || form.get(0).nodeName=='TEXTAREA') {
form.each(function(k,v){
if(v.type=='checkbox' && v.checked==true){
nead_confirm = true;
}
})
if ( nead_confirm && $(this).hasClass('confirm') ) {
if(!confirm('确认要执行该操作吗?')){
return false;
}
}
query = form.serialize();
}else{
if ( $(this).hasClass('confirm') ) {
if(!confirm('确认要执行该操作吗?')){
return false;
}
}
query = form.find('input,select,textarea').serialize();
}
$(that).addClass('disabled').attr('autocomplete','off').prop('disabled',true);
$.post(target,query).success(function(data){
if (data.status==1) {
if (data.url) {
updateAlert(data.info,1,'');
}else{
updateAlert(data.info ,1,'alert-success');
}
setTimeout(function(){
$(that).removeClass('disabled').prop('disabled',false);
if (data.url) {
location.href=data.url;
}else if( $(that).hasClass('no-refresh')){
//$('#top-alert').find('button').click();
}else{
location.reload();
}
},1500);
}else{
updateAlert(data.info);
setTimeout(function(){
$(that).removeClass('disabled').prop('disabled',false);
},1500);
}
});
}
return false;
});
window.updateAlert = function (text,status,c) {
switch(status){
case 1:
layer.msg(text, {icon: 2});
break;
default:
layer.msg(text, {icon: 1});
break;
}
}
});
function del_action(id,url){
layer.msg('确定删除?', {
time: 0 //不自动关闭
,btn: ['删除', '取消']
,yes: function(index){
$.ajax({
type: "post",
url: url,
dataType: "json",
data: {id:id},
success: function (res) {
if (res.status != 0) {
$("#"+id+"").remove();
layer.msg(res.msg, {icon: 1});
}
else {
layer.msg(res.msg, {icon: 2});
}
},
error: function () {
layer.msg('服务器故障', {icon: 5});
}
})
layer.close(index);
}
});
}
//导航高亮
function highlight_subnav(url){
$('.user_menu').find('a[href="'+url+'"]').parent().addClass('cur');
}
function setValue(name,value) {
var first = name.substr(0,1), input, i = 0, val;
if(value === "") return;
if("#" === first || "." === first){
input = $(name);
} else {
input = $("[name='" + name + "']");
}
if(input.eq(0).is(":radio")) { //单选按钮
input.filter("[value='" + value + "']").each(function(){this.checked = true});
} else if(input.eq(0).is(":checkbox")) { //复选框
if(!$.isArray(value)){
val = new Array();
val[0] = value;
} else {
val = value;
}
for(i = 0, len = val.length; i < len; i++){
input.filter("[value='" + val[i] + "']").each(function(){this.checked = true});
}
} else { //其他表单选项直接设置值
input.val(value);
}
}
$(".float-input").keyup(function(){
$(this).val($(this).val().replace(/[^0-9.]/g,''));
}).bind("paste",function(){
$(this).val($(this).val().replace(/[^0-9.]/g,''));
})
$(".integer-input").keyup(function(){
$(this).val($(this).val().replace(/\D|^0/g,''));
}).bind("paste",function(){
$(this).val($(this).val().replace(/\D|^0/g,''));
})
function initPromoteSelect(url) {
var firstTag = $('.level-promote').eq(0)
var topPromoteId = $('#top-promote-id').val()
var firstLevel = firstTag.attr('data-level')
getSubPromotes(url, topPromoteId, firstLevel)
$('.level-promote').on({
change: function name() {
var parentId = $(this).val()
var level = parseInt($(this).attr('data-level'))
getSubPromotes(url, parentId, level + 1)
}
})
}
function getLevelName(level) {
var name = ''
if (level == 2) {
name = '部门长'
} else if (level == 3) {
name = '组长'
} else if (level == 4) {
name = '推广员'
}
return name
}
function getSubPromotes(url, parentId, level) {
var selectTag = $('.level-promote[data-level=' + level + ']')
if (selectTag.length == 0) {
return
}
var defaultVal = selectTag.attr('data-val')
var levelName = getLevelName(level)
if (parentId == 0) {
var options = '<option value="0">请选择' + levelName + '</option>'
selectTag.html(options)
selectTag.val(defaultVal).trigger("change")
return
}
$.ajax({
url: url,
dataType: 'json',
data: {promote_id: parentId},
success: function(response) {
var options = '<option value="0">请选择' + levelName + '</option>'
for (var i in response.data.promotes) {
var promote = response.data.promotes[i]
var selected = ''
if (defaultVal > 0 && promote.id == defaultVal) {
selected = 'selected'
}
options += '<option value="' + promote.id + '"' + selected + '>' + promote.account + '(' + promote.real_name + ')' + '</option>'
}
selectTag.html(options)
selectTag.val(defaultVal).trigger("change")
}
})
}