common.js 1.97 KB
/**
 * 删除提示框
 * text 文本
 * url  删除接口
 * success 删除成功之后的回调
 */
function removeConfirm(text, url, success) {
	layer.confirm(text, {
		btn : [ '确定删除', '取消' ],
		icon : 3,
		skin : 'layui-layer-cfm-delete'
	}, function(){
		layer.msg('正在删除...', {icon: 16});
		
		$post(url, {'_method': 'delete'},function(res){
			layer.msg('删除成功!'); 
			success && success();
		});
	});
}


function successHandle(json, handle){
	if(!json.status){
		handle && handle(json);
		return ;
	}
	
	if(json.status == 'ERROR')
		layer.alert(json.msg, {icon: 2, title: '操作失败'});    
	else
		handle && handle(json);
}

function ajaxComplete(xhr, ts, succ){
	if(ts == 'success'){
		successHandle(xhr.responseJSON, succ);
	}
	else if(ts == 'error'){
		layer.alert(xhr.responseText, {icon: 2, title: '操作失败'});
	}
}

function $get(url,data, successFun) {
	$.ajax({
		url: url,
		data: data,
		complete: function(xhr, ts){
			ajaxComplete(xhr, ts, successFun);
		}
	});
}

function $post(url,data, successFun) {
	$.ajax({
		url: url,
		method: 'POST',
		data: data,
		complete: function(xhr, ts){
			ajaxComplete(xhr, ts, successFun);
		}
	});
}

//将数据写入表单
function putFormData(json, fId){
	json.enable = json.enable==true? 1 : 0;
	for(var att in json){
		var f = 'name=' +att
			,elem = $('input['+f+'],select['+f+'],textarea['+f+']', fId);
		if(elem.length > 0){
			if(elem.attr('type') == 'checkbox')
				elem[0].checked = json[att];
			else
				elem.val(json[att]).change();
		}
	}
}

/**
 * 将模块List 转换为树结构
 * @param arr
 * @returns {Array}
 */
function createTreeData(arr){
	var treeData = [];
	var len = arr.length;
	for(var i = 0; i < len; i ++){
		var pId = arr[i].pId;
		arr[i].text = arr[i].name;
		if(!pId){
			treeData.push(arr[i]);
		}
			
		for(var j = 0; j < len; j ++){
			if(pId == arr[j].id){
				if(!arr[j].children)
					arr[j].children = [];
				arr[j].children.push(arr[i]);
				break;
			}
		}
	}
	return treeData;
}