2022-07-09 11:44:18

# javaScript笔记


js javaScript jquery

--20190403

# js

url中文转换   encodeURI(encodeURI(name))    decodeURI(name)


$('#passwordAnwser').textbox('textbox').validatebox('options').required = false;
$('#name').validatebox({required:false});

//$('#passwordAnwser').textbox('setValue','1');
//$('#password').passwordbox('hidePassword');


$.fn.validatebox.defaults.rules.email.message = '请输入有效的<br/>电子邮件地址';


alert回调
 $.messager.alert("提示:", msg, "info",function(){
		  $('#userDeptEmailFrom').focus();
	 });



一秒刷新
 setTimeout(function(){
	window.location.reload();
},1000);


// 定时
setTimeout(function(){
			  init();
			  layer.close(loading);  
		  },500);
		  
		  

滚动条设置在顶端
$('body').scrollTop( $('body').height() );

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
字符串转函数
var bb = 'function play(){alert("getplay");}';

var ss = bb;

var ex = {getplay:eval("("+ss+")")};

ex.getplay();


JSON.parse(string) :接受一个 JSON 字符串并将其转换成一个 JavaScript 对象。
JSON.stringify(obj) :接受一个 JavaScript 对象并将其转换为一个 JSON 字符串。


layer.close(index);
layer.closeAll(); //疯狂模式,关闭所有层

layer.closeAll('dialog'); //关闭信息框
layer.closeAll('page'); //关闭所有页面层
layer.closeAll('iframe'); //关闭所有的iframe层
layer.closeAll('loading'); //关闭加载层
layer.closeAll('tips'); //关闭所有的tips层

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

function hoverRowSrc(obj){
	var img = '<img class="add" data-tool="left" style="float:right;position:relative;top:8px;cursor:pointer;" src="img/add.png">';
	if(!$(obj).is(':has(img)') ){
		$(obj).append($(img));
	}
}
function outRowSrc(obj){
	if($(obj).is(':has(img)') ){
		setTimeout(function(){
			$(obj).find('img').remove();
		},50)
	}
}

function initCheckAll(){
	$('input[name="input1"]').on('ifChecked', function(event){
		$('div[name="divSrc"]').each(function(){
			$(this).addClass('checked');
		});
		if($('div[name="divSrc"]').length>0){
			$('button[data-tool="right"]').removeAttr("disabled");
		}
	});
	 $('input[name="input1"]').on('ifUnchecked', function(event){
		 $('div[name="divSrc"]').each(function(){
				$(this).removeClass('checked');
			});
		 $('button[data-tool="right"]').attr("disabled","");
	 });	
}

function selectSrc(obj){
	var st = $(obj).attr('class');
	setTimeout(function(){if(st.indexOf('checked')>-1){
			$(obj).removeClass('checked');
			
			var flag = true;
			$('div[name="divSrc"]').each(function(){
				if($(this).hasClass("checked")){
					flag = false;
				}
			})
			if(flag){
				$('button[data-tool="right"]').attr("disabled","");
			}
			
		}else{
			$(obj).addClass('checked');
			$('button[data-tool="right"]').removeAttr("disabled");
		}},20);
} 


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53

$("#tt").tabs({
onSelect : function( title ){
	<%-- if(title == '短信'){
		if(!$("#smsDetail").attr("src")){
			$("#smsDetail").attr("src","<%=smsDetailPage%>");
		}
	} else if(title == '邮件'){
		if(!$("#emailDetail").attr("src")){
			$("#emailDetail").attr("src","<%=emailDetailPage%>");
		}
	} else if(title == '即时消息'){
		if(!$("#imDetail").attr("src")){
			$("#imDetail").attr("src","<%=imDetailPage%>");
		}
	} else if(title == '微信'){
		if(!$("#wxDetail").attr("src")){
			$("#wxDetail").attr("src","<%=wxSendDetail%>");
		}
	} --%>
	<%-- if(!$("#smsDetail").attr("src")){
		$("#smsDetail").attr("src","<%=smsDetailPage%>");
	} --%>
	var pp = $('#tt').tabs('getSelected');
	var ifr =  $($("iframe",pp)[0]);
	if(!ifr.attr("src")){
		var url = ifr.attr("tarsrc");
		ifr.attr("src",url);
	}
}

​	

 $(document).ready(function() {
	  $("#fm").form({
			onSubmit: function() {
				return $(this).form("validate");
			},
			success: function(result) {
				if (result == 'success') {
					$.messager.alert('提示', '保存成功!', 'info');
				} else {
					alertMsg(result);
				}
			}
		});		
	});
	
function check()
{
	$('#fm').submit();
}	

						
			
$('#loginNameInput').textbox('textbox').keyup(function(event) {
		$('#userName').textbox("setValue", '');
		$('#userId').val('0');
		var text = $('#loginNameInput').combobox("getText");
		val = text || val ;
		text = val;
	if (event.keyCode == "13") { 
		$.ajax({
			url : 'getUsersByLoginName.do?domainId=1&loginName='+text,
			type: 'get',
			dataType:'json',
			success:function(result){
				var data = [];
				data = result;
				$('#loginNameInput').combobox("loadData", data);
				$('#loginNameInput').combobox("showPanel");
				$('#loginNameInput').combobox("setText", text);
			}
		});
	}
});

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76

# 选择框

//联动单选框
$('#radio21').on('ifChecked', function(event){
	$('#radio22').iCheck('check');
	$('#radio24').iCheck('uncheck');
});

$('#radio23').on('ifChecked', function(event){
	$('#radio22').iCheck('uncheck');
	$('#radio24').iCheck('check');
});

//时间选择框
timebox('#datebox'); 
//demo必填文本框:添加清空文本框信息
$('#tt').textbox().textbox('addClearBtn', 'icon-clear');

//demo文本域:添加事件
$('#textarea').textbox('textbox').on('click', function(){  
	console.log(1);  
});

//复选框事件
$(".checkbox input").each(function(i,el){
	$(this).on('ifChecked', function(event){
		switch(i)
		{
			case 0:
			   console.log('第一个按钮已选中');
			   break;
			case 1:
			   console.log('第二个按钮已选中');
			   break;
			default:
			   //console.log(event.type);
		}
	});
	$(this).on('ifUnchecked', function(event){
		switch(i)
		{
			case 0:
			   console.log('第一个按钮已移除');
			   break;
			case 1:
			   console.log('第二个按钮已移除');
			   break;
			default:
			   //console.log(event.type);
		}
	});		
});

//复选框,单选框:添加皮肤
$('input[type="checkbox"],input[type="radio"]').iCheck({
	checkboxClass: 'icheckbox_minimal-blue',
	radioClass: 'iradio_minimal-blue',
	increaseArea: '20%'
});


//单选框、复选框样式
function checkboxAndRadioStyle() {
	$('input[type="checkbox"],input[type="radio"]').iCheck({
		checkboxClass: 'icheckbox_minimal-blue',
		radioClass: 'iradio_minimal-blue',
		increaseArea: '20%'
	});
}
			
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68

# css配置


//超出部分感叹号表示
h3.app-name {
	display: inline-block;
	max-width: 160px;
	overflow: hidden; /*超出部分隐藏*/
	text-overflow: ellipsis; /*超出部分感叹号显示*/
	white-space: nowrap; /*一行显示*/
}

//图片圆角
.user-info.user-avatar img {
	overflow: hidden;
	border-radius: 20px;
	width: 20px;
}

//获取浏览器宽度
function getBrowserWidth(){
	alert($(window).width());
}

//获取屏幕宽度
function getScreenWidth(){
	alert(window.screen.width);
	}

//css 悬浮事件
li:hover,.s1:hover{
		opacity:0.6; //透明度
		filter:alpha(opacity=60); /* IE8 及更早版本 */
		box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
		border-radius:20px;//边框圆角
		border:1px solid #aaa;
	}
ul{
	list-style-type:none;
	margin:0;
	padding:0;
}
li{
	display:inline-block;
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44

# radio选中

$("input[name='radioName']").on('ifChecked', function(event){
 test();
});

$().ready(function(){
		$("input[name='statisticsTimeRadio']").on('click', function(){
			var type = $("input[name='statisticsTimeRadio']:checked").attr("value");
			if(type==0){
				$('#statisticsTime').hide();
			}else{
				$('#statisticsTime').show();
			}
		});
	});
	
	$("#rdo1").prop("checked","checked");
	
	$(".selector").find("option[text='pxx']").attr("selected",true);
	
	
  function initCheckBox(){
			$('input[type="radio"],input[type="checkbox"]')
			.iCheck({
				checkboxClass : 'icheckbox_minimal-blue',
				radioClass : 'iradio_minimal-blue'
				});		
			$('input[name="checkall"]').on('ifChecked', function(event){
				$('input[type="checkbox"]').iCheck('check');
			});
			 $('input[name="checkall"]').on('ifUnchecked', function(event){
				$('input[type="checkbox"]').iCheck('uncheck');
			});	 
		}  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33


// radio	
 $("input[name='display']").on('ifChecked', function(event){
	 if($('#display2').prop('checked')){
		 $("#perEdit1").iCheck('unCheck');
		 $("#perEdit2").iCheck('check');

	 }
});


// checkbox
$('#field6Box').on('ifChecked', function(event){
	$('#field1Box').iCheck('check');
});


$('#field6Box').on('ifUnchecked', function(event){
	if(!$('#field7Box').prop('checked')){
		$('#field1Box').iCheck('unCheck');
	}
});

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

# 正则表达式

/*是否带有小数*/
function    isDecimal(strValue )  {  
   var  objRegExp= /^\d+\.\d+$/;
   return  objRegExp.test(strValue);  
}  

/*校验是否中文名称组成 */
function ischina(str) {
    var reg=/^[\u4E00-\u9FA5]{2,4}$/;   /*定义验证表达式*/
    return reg.test(str);     /*进行验证*/
}

/*校验是否全由8位数字组成 */
function isStudentNo(str) {
    var reg=/^[0-9]{8}$/;   /*定义验证表达式*/
    return reg.test(str);     /*进行验证*/
}

/*校验电话码格式 */
function isTelCode(str) {
    var reg= /^((0\d{2,3}-\d{7,8})|(1[3584]\d{9}))$/;  
    return reg.test(str);
}

var reg = /^(-){1}\d+|\d+$/;

/*校验邮件地址是否合法 */
function IsEmail(str) {
    var reg=/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
    return reg.test(str);
}

特殊字符正则
var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]") ;
return !pattern.exec(value); //不包含

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36

# validatebox

身份证验证
 var idCard = function (value) {
        //if (value.length == 15) return true;
        var number = value.toLowerCase();
        var d, sum = 0, v = '10x98765432', w = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2], a = '11,12,13,14,15,21,22,23,31,32,33,34,35,36,37,41,42,43,44,45,46,50,51,52,53,54,61,62,63,64,65,71,81,82,91';
        var re = number.match(/^(\d{2})\d{4}(((\d{2})(\d{2})(\d{2})(\d{3}))|((\d{4})(\d{2})(\d{2})(\d{3}[x\d])))$/);
        if (re == null || a.indexOf(re[1]) < 0) return false;
        if (re[2].length == 9) {
            number = number.substr(0, 6) + '19' + number.substr(6);
            d = ['19' + re[4], re[5], re[6]].join('-');
        } else d = [re[9], re[10], re[11]].join('-');
        if (!isDateTime.call(d, 'yyyy-MM-dd')) return false;
        for (var i = 0; i < 17; i++) sum += number.charAt(i) * w[i];
        return (re[2].length == 9 || number.charAt(17) == v.charAt(sum % 11));
    }		
	
	
<div><input  id="email" name="email" value=""  style="padding:4px;float:left;width: 250px;height:18px;border-radius:4px;border:1px solid #ccc;"
 validType="validEmail"  class="easyui-validatebox validatebox-text"  panelHeight="auto"></div>
 
validBirthDate

$.extend($.fn.validatebox.defaults.rules, {
	validEmail: {
		validator: function(value, param) {
			var regEx = /^[a-zA-Z0-9_]{1,}@(([a-zA-z0-9]){1,}\.){1,3}(com|cn|net)$/;
			var a = regEx.test(value);
			return a;
		},
		message: '请输入正确邮箱格式'
	}
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
$.extend($.fn.validatebox.defaults.rules, {
 phoneValidType: {
	  validator: function(value, param) {
		  return /^1[3|4|5|6|7|8|9][0-9]{9}$/.test(value);
	  },
	  message: '请输入正确的手机号码'
  }
});

$.extend($.fn.validatebox.defaults.rules, {
 emailValidType: {
	  validator: function(value, param) {
		 if(value.indexOf('*')>0){
			 return false;
		 }
		 //var reg = /^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$/;
		 //return !reg.test(value);
		 return /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(value);
	  },
	  message: '请输入有效的电子邮件地址'
  }
});

$.extend($.fn.validatebox.defaults.rules, {
	 telephoneValidType: {
			validator: function (value, param) {
			   return /^((0(((\d{2,3})-(\d){7,8})|(\d{2,3}(\d){7,8}))))$/.test(value);
			},
			message: '联系电话不正确'
	 }
 });

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32