JS判断上传的文件类型
判断图片:
if(!/\.(gif|jpg|jpeg|png|GIF|JPG|PNG)$/.test(file.name)){
alert("图片类型必须是.gif,jpeg,jpg,png中的一种");
return;
}
判断Excel文档:
if (!/\.(xlsx|xls|XLSX|XLS)$/.test(file.name)) {
alert("文件类型必须是.xlsx,xls中的一种");
return;
}
input赋值和清空:
// 清空
$("#idName“).val("")
// 赋值
$("#idName").attr("value", value);
带负号保留两位小数:
<input type="text"
onkeyup="clearNoNum(this)"
onblur="clearDot(obj)"
placeholder="带负号保留两位小数">
<script>
//带负数保留两位小数
function clearNoNum(obj) {
obj.value = obj.value.replace(/[^\d.-]/g,""); //清除"数字"和"."和"-"以外的字符
obj.value = obj.value.replace(/^[^-|\d]{1}/g,""); //只能以"-"和数字开头
obj.value = obj.value.replace(/([\d.-])(-)/g,"$1"); //清除"数字"或"."或"-" 后面的"-"
obj.value = obj.value.replace(/(-)(\.)/g,"$1"); //清除"-" 后面的"."
obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");//只保留一个"."
obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3'); //只能输入两个小数
}
//如果末尾为".",则失去焦点后清除小数点
function clearDot(obj) {
obj.value = obj.value.replace(/\.$/g,""); //如果末尾没有数值则清除末尾的"."
}
</script>
保留两位小数:
<input type="text"
onkeyup="clearNoNum(this)"
onblur="clearDot(obj)"
placeholder="保留两位小数">
<script>
//限制input输入保留两位小数
function num(obj) {
obj.value = obj.value.replace(/[^\d.]/g, ""); //只能输入两位小数
obj.value = obj.value.replace(/^\./g, ""); //验证第一个字符是数字
obj.value = obj.value.replace(/\.{2,}/g, "."); //只保留第一个, 清除多余的
obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); //只能输入两个小数
if(obj.value.indexOf(".")< 0 && obj.value !=""){//以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
if(obj.value.substr(0,1) == '0' && obj.value.length == 2){
obj.value= parseFloat(obj.value);
}
}
}
</script>
高德地图POI搜索去除数字点
/*傻瓜式把图片链接给搞成空的*/
.amap_lib_placeSearch_poi{
display: none;
}
.selected .amap_lib_placeSearch_poi {
display: none;
}
forEach网络请求异步转同步
$scope.cars.forEach(function(item,index){
setTimeout(function(){
carService.getDriverById({"id": item.driverId}).then(function (data) {
if (data.code === "200"){
item.driverName = data.data.data.realname;
item.driverPhone = data.data.data.mobile;
}
}, function (data) {
});
},
500 * index);
})
JS对Date的扩展
/**
*对Date的扩展,将 Date 转化为指定格式的String
*月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,
*年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
*例子:
*(new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
*(new Date()).Format("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18
*/
Date.prototype.format = function (fmt) {
var o = {
"M+": this.getMonth() + 1, //月份
"d+": this.getDate(), //日
"h+": this.getHours(), //小时
"m+": this.getMinutes(), //分
"s+": this.getSeconds(), //秒
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
"S": this.getMilliseconds() //毫秒
};
if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o)
if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
return fmt;
};