1. 正则表达式
1.1 输入框只能包含数字且数字之间只能用英文分号(;)分割
var reg = /^(\d+[;])*(\d+)$/;
if(!reg.exec(phoneNumber)){
document.getElementById("call_phonesTip").innerHTML="输入格式有误";
return;
}
2. 选择日期不能超过某天
function $() {
var date = new Date()//时间
var day = date.getDate()//日
var month = date.getMonth() + 1//月
var year = date.getFullYear()//年
s1 = year + '-' + month + '-' + day
s2 = '想要和当前日期比较的表单日期'
if (DateDiff(s1, s2) < 0)
{
alert('选择的日期不能小于今天!')
return false
}
if (DateDiff(s1, s2) > 3) {
alert('选择的日期不能大于超过未来3天!')
return false
}
}
//计算天数差的函数,通用
function DateDiff(sDate1, sDate2) { //sDate1和sDate2是2002-12-18格式
var aDate, oDate1, oDate2, iDays
aDate = sDate1.split('-')
oDate1 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]) //转换为12-18-2002格式
aDate = sDate2.split('-')
oDate2 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0])
iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 / 24) //把相差的毫秒数转换为天数
if (oDate1 < oDate2) {
return iDays
} else {
return -iDays
}
3. 文本输入框input text输入字母自动转大写
现在需要把一个input输入框内的字母自动转变为大写
- 使用JavaScript,在input标签添加onkeyup方法,将字符转为大写
<input name="text" type="text" onkeyup="this.value=this.value.toUpperCase()" />
- 使用CSS,给input设置样式
<input type="text" style="text-transform:uppercase;" />
区别:使用JavaScript会给用户一种转换感,使用CSS是把输入的字母显示为大写。所以从用户体验来说,使用css会更好!不过使用css的话,需要在后台进行大写转换操作。