sifangpay/public/style/assets/a8a968ef/layer/common.js

203 lines
4.7 KiB
JavaScript

//加载拓展
/*layer.config({
extend: 'layer.js'
}); */
var loadingBox;
//loading层
function xloading() {
removexdialog();
loadingBox = layer.load(2, {
shade: [0.2, '#6C6C6C'] //0.1透明度的白色背景
});
}
function xloadmsg(title) {
layer.msg(
title, {
icon: 16,
time: 20000 //20秒后关闭
}
);
}
//关闭loading层
function removexloading() {
layer.close(loadingBox);
}
//提示层
function xtips(msg, type, styleCss) {
var msgBox;
if (type == 'succ') {
msgBox = layer.msg(msg, {
icon: 1,
time: 2000,
shade: [0.2, '#6C6C6C']
});
} else {
msgBox = layer.msg(msg, {
icon: 2,
time: 2000,
shade: [0.2, '#6C6C6C']
});
}
var styleCss = arguments[2] ? arguments[2] : '';
if (styleCss != '') {
layer.style(msgBox, styleCss);
}
}
var confirmBox;
//对话框
function xdialog(title, message, callback1, callback2, styleCss) {
removexloading();
confirmBox = layer.confirm(message, {
title: title,
btn: ['确定', '取消'],
shade: [0.2, '#6C6C6C']
}, callback1, callback2);
var styleCss = arguments[4] ? arguments[4] : '';
if (styleCss != '') {
layer.style(confirmBox, styleCss);
}
}
function removexdialog() {
layer.close(confirmBox);
}
/**
* 输入框
* @params :type,0为单行,2为多行文本
* :title,输入框的标题
* :defaultContent,默认内容
* :callback,点击确定后的回调函数
*/
function xprompt(type, title, defaultContent, callback) {
layer.prompt({
formType: type,
value: defaultContent,
title: title
}, function(value, index, elem) {
callback(value);
layer.close(index);
});
}
/**
* 验证表单
* 在需要验证的input元素的class加上required
* @params selector string 选择器
*/
function validForm(selector) {
var result = true;
$(selector).find('.required').each(function() {
if ($(this).val() == '') {
result = false;
$(this).focus();
$(this).attr('placeholder', '不能为空!');
return false;
}
});
return result;
}
/**
* 弹出层打开frame
* @param title 标题
* @param url frame的url
*/
function showFrame(title, url) {
layer.open({
type: 2,
title: title,
shadeClose: false,
maxmin: true, //开启最大化最小化按钮
shade: 0.8,
area: ['50%', '70%'],
content: url
});
}
function showBigFrame(title, url) {
layer.open({
type: 2,
title: title,
shadeClose: false,
shade: 0.8,
area: ['75%', '70%'],
content: url
});
}
function layerOpen(content) {
var type = arguments[1] ? arguments[1] : 1;
var width = arguments[2] ? arguments[2] : '100%';
var height = arguments[3] ? arguments[3] : '80%';
layer.open({
type: type,
skin: 'layui-layer-rim', //加上边框
area: [width, height], //宽高
content: content
});
}
//写cookies
function setCookie(name, value) {
var Days = 30;
var exp = new Date();
exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000);
document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString();
}
//读取cookies
function getCookie(name) {
var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");
if (arr = document.cookie.match(reg))
return unescape(arr[2]);
else
return null;
}
/**
* 限制文本框输入的字符数量
* @param obj
* @param max
* @param v
*/
function clsInput(obj, max, v) {
var reg = /[^x00-xff]/gm;
var str = obj.value.replace(reg, 'aa'); //全换成单字节字符计算
if (v) {
var v = document.getElementById('v');
}
if (str.length > max) {
var n = 0,
strr = [];
for (var i = 0; i < obj.value.length; i++) { //得到50字节以内的字符
/[^x00-xff]/.test(obj.value.charAt(i)) ? n += 2 : n += 1;
if (n > max) break;
strr.push(obj.value.charAt(i));
}
obj.value = strr.join('');
if (v) {
v.innerHTML = 0;
}
} else {
if (v) {
v.innerHTML = max - str.length;
}
}
}
function checkPhone(phone) {
//var reg = /^(13[0-9]{9})|(18[0-9]{9})|(14[0-9]{9})|(17[0-9]{9})|(15[0-9]{9})$/;
var reg = /(^(13[0-9]{9})|(18[0-9]{9})|(14[0-9]{9})|(17[0-9]{9})|(15[0-9]{9})$)|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$/;
if (!reg.test($.trim(phone))) {
return false;
}
return true;
}