常用正则表达式,常用表单验证javascript代码(转)
{
if(as_SourceString.match(/^13[0-9]{9}$/g)) return true; //手机号为13开头的11位数字
else if(as_SourceString.match(/^[0]{1}[0-9]{2,3}[2-8]{1}[0-9]{5,7}$/g)) return true; //小灵通为0开头的3-4位的区号+不以1和9开头的6-8位数字
return false;
}
//--------请新增函数时加注释,尽量将同类的函数放在一起,便于查找。------Label_Name允许为空,在提示与输入框分离时使用。--------
function f_PubStrLTrim(as_SourceString)
{
return as_SourceString.replace(/^[/s ]*/,"");
}
//-------------------------------------------删除字符串右空格(包括全角空格)-----------------
function f_PubStrRTrim(as_SourceString)
{
return as_SourceString.replace(/[/s ]*$/,"");
}
//-------------------------------------------删除字符串左右空格(包括全角空格)----------------
function f_PubStrTrim(as_SourceString)
{
return f_PubStrRTrim( f_PubStrLTrim(as_SourceString));
}
//-------------------------------------------删除字符串的全部空格(包括全角空格)-----------------
function f_PubStrTrimAll(as_SourceString)
{
return as_SourceString.replace(/[/s ]*/g,"");
}
//---------------------------------------------验证是否合法的电子邮箱地址----合法:true---不合法:false---------
function f_EmailCheck(as_SourceString)
{
return as_SourceString.match(/^([/w-/.]+)@((/[[0-9]{1,3}/.[0-9]{1,3}/.[0-9]{1,3}/.)|(([/w-]+/.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(/]?)$/g);
}
//----------------------------------------------验证是否不含有非法的字符--不含有,即合法:true---不合法:false-------------
function f_StringCheck(as_SourceString)
{
//非法字符--(双减号)/*(斜杠星号)'(单引号);(分号)"(双引号)%(百分号)<(左尖括号)>(右尖括号)
if(as_SourceString.match(*|-{2}|[';"%<>]+/)) return false;
else return true;
}
//-------------------------------验证字符串长度是否符合要求---0-为空,1-为小于下限,2-为大于上限,3-符合要求---
function f_StringLenCheck(as_SourceString, low_Length, up_Length)
{
//字符串长度,单字节计1,双字节计和汉字等计2
as_SourceString = as_SourceString.replace(/[^/x00-/xff]/g,"aa");
if(as_SourceString.length == 0) return 0;
else if(as_SourceString.length < low_Length) return 1;
else if(as_SourceString.length > up_Length) return 2;
else return 3;
}
//---------------------------------------------验证是否全部是数字且不以0开头----合法:true---不合法:false---------
function f_NumericCheck(as_SourceString)
{
return as_SourceString.match(/^[1-9]{1}/d*$/g);
}
//---------------------------------------------验证是否全部是数字可以0开头----合法:true---不合法:false---------
function f_NumericCheckAll(as_SourceString)
{
return as_SourceString.match(/^[0-9]{1}/d*$/g);
}
//---------------------------------------------验证是否为标准的电话号码----合法:true---不合法:false---------
function f_MobilCheck(as_SourceString)
{
if(as_SourceString.match(/^13[0-9]{9}$/g)) return true; //手机号为13开头的11位数字
else if(as_SourceString.match(/^[0]{1}[0-9]{2,3}[2-8]{1}[0-9]{5,7}$/g)) return true; //小灵通为0开头的3-4位的区号+不以1和9开头的6-8位数字
return false;
}
//---------------------------------------------验证是否为标准的身份证号码----合法:true---不合法:false---------
function f_IDCardCheck(as_SourceString)
{
return as_SourceString.match(/^[0-9]{6}[1-2]{1}[0-9]{3}[0-1]{1}[0-9]{1}[0-3]{1}[0-9]{1}[0-9]{3}[xX0-9]{1}$/g);
}
//----------------------------------------------验证短日期格式----------------------------------------------------
function f_DateShortCheck(as_SourceString)//2000-1-1或2000-01-01
{
return as_SourceString.match(/^([1-2]{1})([0-9]{3})-(0?[1-9]|10|11|12)-(0?[1-9]|[1-2][0-9]|30|31)$/g);
}
//-------------------------------------------比较两控件值是否相等------------------------------------
function f_CompareControl(Contorl1,Contorl2)
{
if(document.getElementById(Contorl1).value==document.getElementById(Contorl2).value) return true;
else return false;
}
//------------------------------------------------显示第一个图标,隐藏第二个图标------------------
function f_DisplayImage(Image_DispID, Image_NoneID)
{
if(document.getElementById(Image_DispID)) document.getElementById(Image_DispID).style.display="inline";
if(document.getElementById(Image_NoneID)) document.getElementById(Image_NoneID).style.display="none";
}
//------------------------------------------------显示提示文本,使用CSS-fontred字体颜色,Label_Name允许为空-----------
function f_DisplayLabel(Label_ID, Label_String, Label_Name)
{
if(document.getElementById(Label_ID))
{
if(Label_String == "")
{
if(Label_Name != undefined){}
else document.getElementById(Label_ID).innerHTML="";
}
else
{
if(Label_Name != undefined)
{
Label_String = document.getElementById(Label_ID).innerHTML + "<font class='fenleidaohangfont'>" + Label_Name + ":</font>" + Label_String;
}
document.getElementById(Label_ID).innerHTML='<font class="fontred"> '+Label_String+'</font>';
}
}
}
//------------------------------------------------显示出错图标和提示信息-----------
function f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, Label_String, Label_Name)
{
f_DisplayImage(Image_ID_NG, Image_ID_OK);
f_DisplayLabel(Label_ID, Label_String, Label_Name);
f_SetFocus(TextBox_ID);
}
//------------------------------------------------定焦点-----------
function f_SetFocus(Object_ID)
{
if(document.getElementById(Object_ID))
{
if(document.getElementById(Object_ID).isContentEditable) document.getElementById(Object_ID).focus();
if(document.getElementById(Object_ID).type == "text") document.getElementById(Object_ID).select();
}
}
//------------------------------------------------显示正确图标和隐藏提示信息-----------
function f_DisplayOK(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
f_DisplayImage(Image_ID_OK, Image_ID_NG);
f_DisplayLabel(Label_ID, "", Label_Name);
}
//------------------------------------------------显示正确图标和提示为空信息-----------
function f_DisplayEmpty(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
f_DisplayImage(Image_ID_OK, Image_ID_NG);
f_DisplayLabel(Label_ID, '提醒:<font class="fenleidaohangfont">这里还空着呢!</font>', Label_Name);
}
//------------------------------------------------取得文本框的值---首先判断页面对象是否存在-----------
function f_GetTextboxValue(TextBox_ID)
{
if(document.getElementById(TextBox_ID)) return document.getElementById(TextBox_ID).value;
else
{
alert ("系统调试中:程序所需对象 "+TextBox_ID+" 不存在。");
return "";
}
}
//------------------------------------------------文本框常用的判断:判断有无非法字符-------------------------------------------------
function f_TextBoxCheckLawless(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
var as_SourceString = f_GetTextboxValue(TextBox_ID);
if(f_StringCheck(as_SourceString)) return true;
else
{
as_SourceString = "不允许含有单引号、双引号、分号、百分号、尖括号、双减号、斜杠星号,请修改。";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
return false;
}
function f_TextBoxCheckLength(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
var as_SourceString = f_GetTextboxValue(TextBox_ID);
switch (f_StringLenCheck(as_SourceString, low_Length, up_Length))
{
case 0:
{
if(emp_Allow)
{
f_DisplayEmpty(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
else
{
as_SourceString = "不能为空,请重新输入。";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
}
case 1:
{
as_SourceString = "至少需要有 "+low_Length+" 位,每个汉字计2位,请修改。";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
case 2:
{
as_SourceString = "最多只能有 "+up_Length+" 位,每个汉字计2位,请修改。";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
}
return true;
}
//--------------------------------------------- --下拉选择框常用的判断:是否已选择非空选项-------
function f_DropdownlistCheck(Dropdownlist_ID, emp_Allow, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
var as_SourceString = f_GetTextboxValue(Dropdownlist_ID);
if(as_SourceString == ""||as_SourceString == "请选择")
{
if(emp_Allow)
{
f_DisplayEmpty(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
return true;
}
else
{
as_SourceString = "不能为空,请重新选择。";
f_DisplayMessage(Dropdownlist_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
}
f_DisplayOK(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
return true;
}
//--------------------------------------------- --三个单选框判断:是否已选择其中一项-------
function f_RadioButton3Check(RadioButton_ID1,RadioButton_ID2,RadioButton_ID3, emp_Allow, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
var as_SourceString = "";
if(document.getElementById(RadioButton_ID1)&&document.getElementById(RadioButton_ID2)&&document.getElementById(RadioButton_ID3))
{
if(document.getElementById(RadioButton_ID1).checked||document.getElementById(RadioButton_ID2).checked||document.getElementById(RadioButton_ID3).checked)
{
f_DisplayOK(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
}
else if(emp_Allow)
{
f_DisplayEmpty(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
return true;
}
else
{
as_SourceString = "不能为空,请重新选择。";
f_DisplayImage(Image_ID_NG, Image_ID_OK);
f_DisplayLabel(Label_ID, as_SourceString, Label_Name);
f_SetFocus(RadioButton_ID1);
return false;
}
}
return true;
}
//-
//-----------------*****************---------文本框验证过程:常规结构--------------------------------------最终结果提示。--------
//---过程入口
// {
//------获得文本框的字符串,赋给:as_SourceString----这时选择去掉全部空格:f_PubStrTrimAll,还是首尾空格:f_PubStrTrim----------
//-----------将去空格后的字符串赋回给文本框的value
//------判断文本框是否允许为空:emp_Allow,并且:as_SourceString也是为空---------------------------------------------------------
// {
//-----------成立则显示为空:f_DisplayEmpty,且返回通过验证:true
// }
//------判断文本框字符串的长度是否符合要求--------------------------------------------------------------------------------------
// {
//-----------如果长度正确,则判断是否含有非法字符;有特殊字符判断的,可跳过非法字符判断,如:f_NumericCheck(as_SourceString)----
// {
//-----------------如果没有非法字符,则开始附加的判断;如果没有附加判断,则显示通过:f_DisplayOK,且返回通过验证:true----------
//-----------------------附加的判断一般都要新增字符串入口的判断,如:f_EmailCheck(as_SourceString)
// {
//-----------------------如果附加判断通过,则显示通过:f_DisplayOK,且返回通过验证:true
// esle----如果附加判断不正确,则显示错误信息(一般无通用表示),且返回不能通过:false
// }
//-----------------不管非法字符判断结果,强制返回不能通过:false(因为如果通过的话,前面有相应值返回)
// }
//-----------不管长度判断结果,强制返回不能通过:false(因为如果通过的话,前面有相应值返回)
// }
//------不管前面的判断结果,强制返回不能通过:false(因为如果通过的话,前面有相应值返回)
// }
//---------------*****************--------------新增过程均应该是这种结构---------------------------------------最终结果提示。--------
//
//-------------------------文本框验证过程:常规验证----1-删除左右空格,2-判断长度,3-判断有无非法字符。----最终结果提示。--------
function f_TextBoxCheckTrim(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
var as_SourceString = f_PubStrTrim(f_GetTextboxValue(TextBox_ID));
if(document.getElementById(TextBox_ID)) document.getElementById(TextBox_ID).value = as_SourceString;
if(emp_Allow && as_SourceString == "")
{
f_DisplayEmpty(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
if(f_TextBoxCheckLength(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name))
{
if(f_TextBoxCheckLawless(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name))
{
f_DisplayOK(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
return false;
}
return false;
}
//-------------------------文本框验证过程:严格验证----1-删除全部空格(包括文本中的空格),2-判断长度,3-判断有无非法字符。----最终结果提示。--------
function f_TextBoxCheckTrimAll(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
var as_SourceString = f_PubStrTrimAll(f_GetTextboxValue(TextBox_ID));
if(document.getElementById(TextBox_ID)) document.getElementById(TextBox_ID).value = as_SourceString;
if(emp_Allow && as_SourceString == "")
{
f_DisplayEmpty(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
if(f_TextBoxCheckLength(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name))
{
if(f_TextBoxCheckLawless(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name))
{
f_DisplayOK(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
return false;
}
return false;
}
//----------------------------------文本框验证过程:电子邮箱-----首先删除全部空格,全部转成小写字母-----------最终结果提示。-------
function f_TextBoxCheckEmail(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
var as_SourceString = f_PubStrTrimAll(f_GetTextboxValue(TextBox_ID));
as_SourceString = as_SourceString.toLowerCase();
if(document.getElementById(TextBox_ID)) document.getElementById(TextBox_ID).value = as_SourceString;
if(emp_Allow && as_SourceString == "")
{
f_DisplayEmpty(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
if(f_TextBoxCheckLength(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name))
{
if(f_EmailCheck(as_SourceString))
{
f_DisplayOK(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
else
{
as_SourceString = "格式不对,请修改。举例: name@126.com 。即字母、数字、符号-_.@的组合,最后的.后只能有字母。";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
}
return false;
}
//------------------------------------文本框验证过程:纯数字框,不允许0开头--------首先删除全部空格----------------最终结果提示。-------
function f_TextBoxCheckNumeric(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
var as_SourceString = f_PubStrTrimAll(f_GetTextboxValue(TextBox_ID));
if(document.getElementById(TextBox_ID)) document.getElementById(TextBox_ID).value = as_SourceString;
if(emp_Allow && as_SourceString == "")
{
f_DisplayEmpty(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
if(f_TextBoxCheckLength(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name))
{
if(f_NumericCheck(as_SourceString))
{
f_DisplayOK(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
else
{
as_SourceString = "只能包含不以 0 开头的阿拉伯数字,请修改。";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
}
return false;
}
//------------------------------------文本框验证过程:纯数字框,允许0开头--------首先删除全部空格----------------最终结果提示。-------
function f_TextBoxCheckNumericAll(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
var as_SourceString = f_PubStrTrimAll(f_GetTextboxValue(TextBox_ID));
if(document.getElementById(TextBox_ID)) document.getElementById(TextBox_ID).value = as_SourceString;
if(emp_Allow && as_SourceString == "")
{
f_DisplayEmpty(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
if(f_TextBoxCheckLength(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name))
{
if(f_NumericCheckAll(as_SourceString))
{
f_DisplayOK(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
else
{
as_SourceString = "只能包含阿拉伯数字,请修改。";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
}
return false;
}
//------------------------------------文本框验证过程: 密码框--------只需计算长度即可----------------最终结果提示。-------
function f_TextBoxCheckPsw(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
var as_SourceString = f_GetTextboxValue(TextBox_ID);
if(emp_Allow && as_SourceString == "")
{
f_DisplayEmpty(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
if(f_TextBoxCheckLength(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name))
{
f_DisplayOK(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
if(document.getElementById(TextBox_ID))
{
document.getElementById(TextBox_ID).value = "";//密码框有错时,在提示的同时,清除密码框的内容。
f_SetFocus(TextBox_ID);
}
return false;
}
//-----------------------------------文本框验证过程: 验证两个密码框的输入值是否一致-------------------最终结果提示。-------
function f_TextBoxCheckTwoPsw(emp_Allow, low_Length, up_Length, TextBox_ID1, Image_ID_OK1, Image_ID_NG1, Label_ID1, TextBox_ID2, Image_ID_OK2, Image_ID_NG2, Label_ID2, Label_Name1, Label_Name2)
{
var as_SourceString1 = f_GetTextboxValue(TextBox_ID1);
var as_SourceString2 = f_GetTextboxValue(TextBox_ID2);
if(emp_Allow && as_SourceString1 == "" && as_SourceString2 == "")
{
f_DisplayEmpty(Image_ID_OK1, Image_ID_NG1, Label_ID1, Label_Name1);
f_DisplayEmpty(Image_ID_OK2, Image_ID_NG2, Label_ID2, Label_Name2);
return true;
}
if(f_TextBoxCheckLength(TextBox_ID2, emp_Allow, low_Length, up_Length, Image_ID_OK2, Image_ID_NG2, Label_ID2, Label_Name2))
{
f_DisplayOK("Nothing", Image_ID_NG2, Label_ID2, Label_Name2);
if(f_TextBoxCheckLength(TextBox_ID1, emp_Allow, low_Length, up_Length, Image_ID_OK1, Image_ID_NG1, Label_ID1, Label_Name1))
{
f_DisplayOK("Nothing", Image_ID_NG1, Label_ID1, Label_Name1);
if(as_SourceString1 == as_SourceString2)
{
f_DisplayOK(Image_ID_OK1, Image_ID_NG1, Label_ID1, Label_Name1);
f_DisplayOK(Image_ID_OK2, Image_ID_NG2, Label_ID2, Label_Name2);
return true;
}
else
{
as_SourceString1 = "两次输入的密码不一致,请重新输入。";
f_DisplayMessage(TextBox_ID1, Image_ID_OK1, Image_ID_NG1, Label_ID1, as_SourceString1, Label_Name1);
f_DisplayMessage(TextBox_ID2, Image_ID_OK2, Image_ID_NG2, Label_ID2, as_SourceString1, Label_Name2);
}
}
}
else if(f_TextBoxCheckLength(TextBox_ID1, emp_Allow, low_Length, up_Length, Image_ID_OK1, Image_ID_NG1, Label_ID1, Label_Name1))
{
f_DisplayOK("Nothing", Image_ID_NG1, Label_ID1, Label_Name1);
}
if(document.getElementById(TextBox_ID2)) document.getElementById(TextBox_ID2).value = "";//密码框有错时,在提示的同时,清除密码框的内容。
if(document.getElementById(TextBox_ID1))
{
document.getElementById(TextBox_ID1).value = "";//密码框有错时,在提示的同时,清除密码框的内容。
f_SetFocus(TextBox_ID1);
}
return false;
}
//------------------------------------文本框验证过程:标准电话号码框-----删除前后空格,由数字组成,无符号-------------最终结果提示。-------
function f_TextBoxCheckMobil(TextBox_ID, emp_Allow, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
var as_SourceString = f_PubStrTrimAll(f_GetTextboxValue(TextBox_ID));
if(document.getElementById(TextBox_ID)) document.getElementById(TextBox_ID).value = as_SourceString;
if(emp_Allow && as_SourceString == "")
{
f_DisplayEmpty(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
if(f_MobilCheck(as_SourceString))
{
f_DisplayOK(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
as_SourceString = "号码有错,请修改。手机不加0,小灵通加区号。";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
//------------------------------------文本框验证过程:18位身份证号码框-----删除全部空格,由数字和最后一位字母组成--------最终结果提示。-------
function f_TextBoxCheckIDCard(TextBox_ID, emp_Allow, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
var as_SourceString = f_PubStrTrimAll(f_GetTextboxValue(TextBox_ID));
if(document.getElementById(TextBox_ID)) document.getElementById(TextBox_ID).value = as_SourceString;
if(emp_Allow && as_SourceString == "")
{
f_DisplayEmpty(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
if(f_IDCardCheck(as_SourceString))
{
f_DisplayOK(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
as_SourceString = "请输入正确的、18位身份证号码。<a href='#'>点击:15位转18位</a>";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
//-----------------------------------文本框验证过程:短日期-----删除全部空格,2001-1-1或2001-01-01--------最终结果提示。-------
function f_TextBoxCheckDateShort(TextBox_ID, emp_Allow, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
var as_SourceString = f_GetTextboxValue(TextBox_ID);
if(emp_Allow && as_SourceString == "")
{
f_DisplayEmpty(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
else if(f_NumericCheck(as_SourceString))
{
if(document.getElementById(TextBox_ID))
{
if(as_SourceString.length == 8)
{
document.getElementById(TextBox_ID).value = as_SourceString.substr(0,4)+ "-" + as_SourceString.substr(4,2) + "-" + as_SourceString.substr(6,2);
as_SourceString = document.getElementById(TextBox_ID).value;
}
}
}
if(f_DateShortCheck(as_SourceString))
{
var dstring=as_SourceString.substr(0,4);
if(dstring<1900||dstring>2100)
{
as_SourceString = "年份应该在1900到2100年之间,请修改。";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
dstring=as_SourceString.substr(5,as_SourceString.lastIndexOf("-")-5);
switch (eval(dstring))
{
case 4: case 6: case 9: case 11:
dstring=as_SourceString.substr(as_SourceString.lastIndexOf("-")+1);
if(dstring<1||dstring>30)
{
as_SourceString = "4,6,9,11月只有30天,请修改。";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
break;
case 2:
dstring=as_SourceString.substr(0,4);
if(dstring % 400 == 0 ||(dstring %100 != 0 && dstring % 4 == 0))
{
dstring=as_SourceString.substr(as_SourceString.lastIndexOf("-")+1);
if(dstring<1||dstring>29)
{
as_SourceString = "闰年的2月只有29天,请修改。";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
}
else
{
dstring=as_SourceString.substr(as_SourceString.lastIndexOf("-")+1);
if(dstring<1||dstring>28)
{
as_SourceString = "不是闰年的2月只有28天,请修改。";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
}
break;
}
f_DisplayOK(Image_ID_OK, Image_ID_NG, Label_ID, Label_Name);
return true;
}
as_SourceString = "格式不对,应为1988-1-31或1988-01-31,请修改。";
f_DisplayMessage(TextBox_ID, Image_ID_OK, Image_ID_NG, Label_ID, as_SourceString, Label_Name);
return false;
}
//---------------------------------------实时过程:短日期框-----只能输入数字和-号-------------------------------------
function f_ReplaceNotDateShort(TextBox_ID)
{
var as_SourceString = f_GetTextboxValue(TextBox_ID);
as_SourceString = as_SourceString.replace(/[^0-9-]/g,"");
if(document.getElementById(TextBox_ID))
{
if(as_SourceString.lastIndexOf("-") == 2) document.getElementById(TextBox_ID).value = "19"+as_SourceString;
else document.getElementById(TextBox_ID).value = as_SourceString;
}
}
//---------------------------------------实时过程:数字框-----只能输入阿拉伯数字-------------------------------------
function f_ReplaceNotNumeric(TextBox_ID)
{
if(document.getElementById(TextBox_ID)) document.getElementById(TextBox_ID).value = document.getElementById(TextBox_ID).value.replace(//D/g,"");
}
//---------------------------------------实时过程:身份证框-----只能输入阿拉伯数字和x-------------------------------------
function f_ReplaceNotIDNo(TextBox_ID)
{
if(document.getElementById(TextBox_ID)) document.getElementById(TextBox_ID).value = document.getElementById(TextBox_ID).value.replace(/[^0-9Xx]/g,"");
}
//------------------------------------光标定位到文本框尾------------------------------------------------------------------------
function f_setCaretAtEnd(TextBox_ID)
{
if(document.getElementById(TextBox_ID) && document.getElementById(TextBox_ID).isContentEditable)
{
var tmpObj = document.getElementById(TextBox_ID);
if(tmpObj.createTextRange)
{
var r = tmpObj.createTextRange();
r.moveStart('character',tmpObj.value.length);
r.collapse();
r.select();
}
}
}
//------默认获取xml文件的页面放置在根目录下:Menu.aspx
//------四个ID:tmpCountryID,tmpProvinceID,tmpCityID,tepCountyID需在具体窗体文件对应的js文件中使用var声明=""。
//------四个DropDownList_ID默认是:"DropDownList_CountryID","DropDownList_ProvinceID","DropDownList_CityID","DropDownList_CountyID"。
//------地址全称Label_ID默认是:"Label_AddressAll"。
//------地址细节门牌TextBox_ID默认是:"TextBox_Address"。
//------邮政编码TextBox_ID默认是:TextBox_ZipCode。
//------生成xml的默认DBclass.WebService.Web.Service中的视图和表名前缀为:DsUV_和UV_。
//------各地址ID和字段名与数据表中的原始字段名相同。
//-------------------------------------------上一级下拉框改变促发下一级下拉框重新绑定----------------------------------------------------------------------
function Load_DropDownList_ProvinceID(NextClassID)
{
Bind_DropDownList("DropDownList_ProvinceID",NextClassID,"ProvinceID","ProvinceName","DsUV_Provinces","UV_Provinces");
Load_Address("DropDownList_ProvinceID");
}
function Load_DropDownList_CityID(NextClassID)
{
Bind_DropDownList("DropDownList_CityID",NextClassID,"CityID","CityName","DsUV_Cities","UV_Cities");
Load_Address("DropDownList_CityID");
}
function Load_DropDownList_CountyID(NextClassID)
{
Bind_DropDownList("DropDownList_CountyID",NextClassID,"CountyID","LongName","DsUV_Counties","UV_Counties");
Load_Address("DropDownList_CountyID");
}
//-------------------------------------从xml文件中获取地区信息,重新绑定下拉框选项----------------------------------------------------------
function Bind_DropDownList(DropDownList_ID,NextClassID,OptionValue,OptionText,TableName,Table)
{
if(document.getElementById(DropDownList_ID))
{
var tmpDropDownList_ID = document.getElementById(DropDownList_ID);
RemoveAll(tmpDropDownList_ID);
if(NextClassID == "" || NextClassID == "请选择"){}
else
{
var oHttpReq = new ActiveXObject("MSXML2.XMLHTTP");
var oDoc = new ActiveXObject("MSXML2.DOMDocument");
oHttpReq.open("POST", "../Menu.aspx?ClassID="+NextClassID+"&TableName="+TableName, false);
oHttpReq.send("");
result = oHttpReq.responseText;
oDoc.loadXML(result);
itemsOptionText = oDoc.selectNodes("//"+TableName+"/"+Table+"/"+OptionText);
itemsOptionValue = oDoc.selectNodes("//"+TableName+"/"+Table+"/"+OptionValue);
var itemsLength = itemsOptionText.length;
for(i=0;i<itemsLength;i++)
{
var newOption = document.createElement("OPTION");
newOption.text=itemsOptionText[i].text;
newOption.value=itemsOptionValue[i].text;
tmpDropDownList_ID.options.add(newOption);
}
}
}
}
//--------------------------------------------------清空下拉框,并增加一个空白选项“请选择”----------------------------------------------------------
function RemoveAll(DropDownList_ID)
{
var i = 0;
for(i = DropDownList_ID.length; i >= 0; i--)
{
DropDownList_ID.options.remove(i);
}
var newOption = document.createElement("OPTION");
newOption.text="请选择";
newOption.value="";
DropDownList_ID.options.add(newOption);
}
//-------------------------------------------------------联动修改地址全称Label----------------------------------------------------------
function Load_Address(DropDownList_ID)
{
if(DropDownList_ID=="DropDownList_ProvinceID")
{
RemoveAll(document.getElementById("DropDownList_CityID"));
RemoveAll(document.getElementById("DropDownList_CountyID"));
if(document.getElementById("Label_AddressAll")) document.getElementById("Label_AddressAll").innerHTML = Load_AddressToString();
}
else if(DropDownList_ID=="DropDownList_CityID")
{
RemoveAll(document.getElementById("DropDownList_CountyID"));
if(document.getElementById("Label_AddressAll")) document.getElementById("Label_AddressAll").innerHTML = Load_AddressToString();
}
else if(DropDownList_ID=="DropDownList_CountyID")
{
if(document.getElementById("Label_AddressAll")) document.getElementById("Label_AddressAll").innerHTML = Load_AddressToString();
}
}
//-------------------------------------------------------获得所属地区的文本串----------------------------------------------------------
function Load_AddressToString()
{
var tmpAddress = "";
var tmpString = document.getElementById("DropDownList_CountryID").options[document.getElementById("DropDownList_CountryID").selectedIndex].innerHTML;
if(tmpString !="" && tmpString != "请选择") tmpAddress = tmpAddress + tmpString;
tmpString = document.getElementById("DropDownList_ProvinceID").options[document.getElementById("DropDownList_ProvinceID").selectedIndex].innerHTML;
if(tmpString !="" && tmpString != "请选择")
{
if(tmpString.indexOf("(") > 0) tmpString = tmpString.substr(0,tmpString.indexOf("("));
tmpAddress = tmpAddress + " " + tmpString;
}
tmpString = document.getElementById("DropDownList_CityID").options[document.getElementById("DropDownList_CityID").selectedIndex].innerHTML;
if(tmpString !="" && tmpString != "请选择")
{
if(tmpString.indexOf("(") > 0) tmpString = tmpString.substr(0,tmpString.indexOf("("));
tmpAddress = tmpAddress + " " + tmpString;
}
tmpString = document.getElementById("DropDownList_CountyID").options[document.getElementById("DropDownList_CountyID").selectedIndex].innerHTML;
if(tmpString !="" && tmpString != "请选择")
{
if(tmpString.indexOf("(") > 0) tmpString = tmpString.substr(0,tmpString.indexOf("("));
tmpAddress = tmpAddress + " " + tmpString;
}
if(document.getElementById("TextBox_Address")) tmpAddress = tmpAddress + " " + document.getElementById("TextBox_Address").value;
return tmpAddress;
}
//-------------------------------------------------------邮政编码框有修改时显示提示信息----------------------------------------------------------
function ZipCodeLostFocus()
{
if(document.getElementById("TextBox_ZipCode").value == "") document.getElementById("Label_ZipCode").innerHTML = " 输入邮政编码,可以选择自动更改地址的省市区选项。";
else document.getElementById("Label_ZipCode").innerHTML = "<a href='javascript:ZipCodeChangeAddress()'>点击这里:系统根据邮编自动更改地址的省市区选项。</a>";
}
//-------------------------------------------------------根据邮编自动更改地址的省市区选项----------------------------------------------------------
function ZipCodeChangeAddress()
{
if (f_TextBoxCheckNumericAll("TextBox_ZipCode", false, 6, 6, "", "ImageZipCode_No", "Label_ZipCode"))
{
ZipCodeToTmpID(document.getElementById("TextBox_ZipCode").value);
document.getElementById("DropDownList_CountryID").value = tmpCountryID;
Bind_DropDownList("DropDownList_ProvinceID",tmpCountryID,"ProvinceID","ProvinceName","DsUV_Provinces","UV_Provinces");
document.getElementById("DropDownList_ProvinceID").value = tmpProvinceID;
Bind_DropDownList("DropDownList_CityID",tmpProvinceID,"CityID","CityName","DsUV_Cities","UV_Cities");
document.getElementById("DropDownList_CityID").value = tmpCityID;
Bind_DropDownList("DropDownList_CountyID",tmpCityID,"CountyID","LongName","DsUV_Counties","UV_Counties");
document.getElementById("DropDownList_CountyID").value = tepCountyID;
Load_Address("DropDownList_CountyID");
}
}
//-------------------------------------------------------按邮政编码生成所属地区代码----------------------------------------------------------
function ZipCodeToTmpID(ZipCode)
{
if(ZipCode == "")
{
tmpCountryID = "CHN";
tmpProvinceID = "CHNGDS";
tmpCityID = "CHNGDSGZH";
tepCountyID = "CHNGDSGZHBAI";
}
else
{
var oHttpReq = new ActiveXObject("MSXML2.XMLHTTP");
var oDoc = new ActiveXObject("MSXML2.DOMDocument");
oHttpReq.open("POST", "../Menu.aspx?ClassID="+ZipCode+"&TableName=DsUV_WEB_CountyZipCode", false);
oHttpReq.send("");
result = oHttpReq.responseText;
oDoc.loadXML(result);
itemsCountryID = oDoc.selectNodes("//DsUV_WEB_CountyZipCode/UV_WEB_CountyZipCode/CountryID");
itemsProvinceID = oDoc.selectNodes("//DsUV_WEB_CountyZipCode/UV_WEB_CountyZipCode/ProvinceID");
itemsCityID = oDoc.selectNodes("//DsUV_WEB_CountyZipCode/UV_WEB_CountyZipCode/CityID");
itemsCountyID = oDoc.selectNodes("//DsUV_WEB_CountyZipCode/UV_WEB_CountyZipCode/CountyID");
tmpCountryID = itemsCountryID[0].text;
tmpProvinceID = itemsProvinceID[0].text;
tmpCityID = itemsCityID[0].text;
tepCountyID = itemsCountyID[0].text;
}
}
//-------------------------------------------------------按所属地区代码生成邮政编码----------------------------------------------------------
function ZipCodeVsCountyID(ZipCode,CountyID)
{
if(CountyID == "" || ZipCode == "000000") return true;
else
{
var oHttpReq = new ActiveXObject("MSXML2.XMLHTTP");
var oDoc = new ActiveXObject("MSXML2.DOMDocument");
oHttpReq.open("POST", "../Menu.aspx?ClassID="+ZipCode+"&TableName=DsUV_WEB_CountyZipCode", false);
oHttpReq.send("");
result = oHttpReq.responseText;
oDoc.loadXML(result);
itemsCountyID = oDoc.selectNodes("//DsUV_WEB_CountyZipCode/UV_WEB_CountyZipCode/CountyID");
var itemsLength = itemsCountyID.length;
for(i=0;i<itemsLength;i++)
{
if(itemsCountyID[i].text == CountyID) return true;
}
return false;
}
}
//-------------------------------------------------------判断邮政编码过程----------------------------------------------------------
function f_TextBoxCheckZipCode(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name)
{
if (f_TextBoxCheckNumericAll(TextBox_ID, emp_Allow, low_Length, up_Length, Image_ID_OK, Image_ID_NG, Label_ID, Label_Name))
{
if(ZipCodeVsCountyID(document.getElementById(TextBox_ID).value, document.getElementById("DropDownList_CountyID").value)) return true;
else
{
f_DisplayMessage("DropDownList_CountryID", "ImageCountryID_Yes", "ImageCountryID_No", "Label_countryList", "邮编与所属地区不一致,有可能导致包裹投递延误。");
if(confirm("您输入的 邮政编码 与所选的 所属地区 不一致,这有可能导致包裹投递延误。/n/n 中国大陆以外地区、无邮政编码的请输入6个0。/n/n按 “确定” 进行修改,按 “取消” 忽略此情况。"))
{
ZipCodeLostFocus();
return false;
}
return true;
}
}
f_DisplayMessage("DropDownList_CountryID", "ImageCountryID_Yes", "ImageCountryID_No", "Label_countryList", "中国大陆以外地区、无邮政编码的请输入6个0。");
return false;
}
//----------------------------------------以上部分:地区选择下拉框和地址全称Label联动的相关过程---------------------------------
function check(){
var recheck = /^/d+(,/d+)*$/; //判断格式是否为:1,2,3,4,5,6,7,8,9 每个数字长度不限var re = /^[1-7](,[1-7])*$/;
if(!document.form1.product_conn.value.match(recheck)){
document.form1.product_conn.value="";return false;
}
}
</script>
Regex reg=new Regex("(?<=<TD[^>]*>)(?:(?! )[^<])+");
string result=string.Empty;
foreach(Match m in reg.Matchs("你的字符串"))
{
result+=m.Value+"/r/n";
}
function yz(v){
var a = /^((/(/d{3}/))|(/d{3}/-))?(/(0/d{2,3}/)|0/d{2,3}-)?[1-9]/d{6,7}$/;
/^((/(/d{3}/))|(/d{3}/-))?(/(0/d{2,3}/)|0/d{2,3}-)?[1-9]/d{6,7}$/;
/^([0-9]/{4/}[ /-.][0-2][0-9][ /-.][0-3][0-9]/)
if(!v.match(a) ){
alert("不符合");
}else{
alert("符合");
}
}
function check(){
var a = /^/d+(,/d+)*$/; //判断格式是否为:1,2,3,4,5,6,7,8,9 每个数字长度不限var re = /^[1-7](,[1-7])*$/;
if(!document.form1.textfield.value.match(a)){
document.form1.textfield.value="";return false;
}
}
</script>
一、移动电话(任选其一):
(1/d{10}//1/d{10})|(1/d{10}(//(0/d{2,3}-/d{8}|0/d{3}-/d{7}))?)|(0/d{2,3}-/d{8}|0/d{3}-/d{7})
二、固定电话:
var a = /13[0-9]{9}|15[0-9]{9}/; 手机验证
^((((1[6-9]|[2-9]/d)/d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]/d|3[01]))|(((1[6-9]|[2-9]/d)/d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]/d|30))|(((1[6-9]|[2-9]/d)/d{2})-0?2-(0?[1-9]|1/d|2[0-8]))|(((1[6-9]|[2-9]/d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="TextBox1"
ErrorMessage="请输入11位手机号码" ValidationExpression="^1(3|5)/d{9}$"></asp:RegularExpressionValidator>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:RegularExpressionValidator ID="RegularExpressionValidator2" runat="server" ControlToValidate="TextBox2"
ErrorMessage="邮编为6位数字" ValidationExpression="^/d{6}$"></asp:RegularExpressionValidator>
<asp:RegularExpressionValidator ID="RegularExpressionValidator3" runat="server" ControlToValidate="TextBox3"
ErrorMessage="正确格式020-XXXXXXXX" ValidationExpression="^(([0/+]/d{2,3}-)?(0/d{2,3})-)?(/d{7,8})(-(/d{3,}))?$"></asp:RegularExpressionValidator>
</div>
input.value.search(/["'"]/)!=-1)
var areg = //W/;
if (areg.test(str))
{
alert("含有非法字符,请重新输入。");
return;
}
ValidationExpression="^((?!,).)*$" 不含,号的正则
日期验证
正则表达式是一个好东西,但是一般情况下,我们需要验证的内容少之又少。下面是常用的17种正则表达式:
<="">[code]常用正则表达式语法例句
[code]匹配中文字符的正则表达式:
[color=red]蓝吧甜 宝宝:[/color][color=blue]主人,陪我去森林里玩好不好?
<input οnkeyup="this.value=this.value.replace(//D/g,'')" onafterpaste="this.value=this.value.replace(//D/g,'')">
<input οnkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')">
<input name=txt1 οnchange="if(//D/.test(this.value)){alert('只能输入数字');this.value='';}">
<input type=text tvalue="" ovalue="" οnkeypress="if(!this.value.match(/^[/+/-]?/d*?/.?/d*?$/))this.value=this.t_value;else this.tvalue=this.value;if(this.value.match(/^(?:[/+/-]?/d+(?:/./d+)?)?$/))this.ovalue=this.value" οnkeyup="if(!this.value.match(/^[/+/-]?/d*?/.?/d*?$/))this.value=this.t_value;else this.tvalue=this.value;if(this.value.match(/^(?:[/+/-]?/d+(?:/./d+)?)?$/))this.ovalue=this.value" οnblur="if(!this.value.match(/^(?:[/+/-]?/d+(?:/./d+)?|/./d*?)?$/))this.value=this.o_value;else{if(this.value.match(/^/./d+$/))this.value=0+this.value;if(this.value.match(/^/.$/))this.value=0;this.ovalue=this.value}">
<input οnkeyup="value=value.replace(/[/d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[/d]/g,''))" maxlength=10 name="Numbers">
<input οnkeyup="value=value.replace(/[^/w/.//]/ig,'')">
<input onKeyUp="value=value.replace(/[^/d|chun]/g,'')">
<input onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || //./d/d$/.test(value))event.returnValue=false">
<input οnkeyup="this.value=this.value.replace(/^(/-)*(/d+)/.(/d/d).*$/,'$1$2.$3')">
常用正则表达式,常用表单验证javascript代码(转)相关推荐
- 常用正则表达式,常用表单验证javascript代码
常用正则表达式,常用表单验证javascript代码 function f_MobilCheck(as_SourceString) { if(as_SourceString.match(/^13[0 ...
- JS表单验证-12个常用的JS表单验证
JS表单验证-12个常用的JS表单验证 表单验证,小编在项目完结后的这段时间把常用的JS表单验证demo整理了一下,和大家一起分享~~~ 1.长度限制 <p>1. 长度限制</p&g ...
- 注册表单校验 js java,JavaScript表单验证完美代码
用原生JS写一个简单的表单验证 首先,是html部分 新用户注册 基本信息 用户名: 请输入至少3位的用户名 密码: 请输入4到8位的密码 确认密码: 请再输入一遍密码 手机号码: 请输入11位手机号 ...
- html表单验证js代码,JavaScript表单验证实现代码
JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证 JavaScript 表单验证 JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输 ...
- 视频教程-Web前端开发利器 SPRY框架之表单验证-JavaScript
Web前端开发利器 SPRY框架之表单验证 有17年互联网行业从业经验,始终在教学第一线,勇于创新,从有效教学,不断向高效教学转变.始终坚持"学生为主体,教师为主导:商业化案例,企业化情境& ...
- 通用的JS表单验证插件代码
一个通用的JS表单验证插件代码.使用方法:第一步:需设定表单项数据类型,第二步:实例表单验证,验证错误提示说明(程序有自带相关错误提示,可自定义每项验证错误提示时文本,只需添加msg). [task] ...
- html表单验证用正则表达式,JavaScript 使用正则表达式进行表单验证的示例代码
搜索热词 JavaScript 表单验证正则表达式大全利用正则表达式判断是否是0-9的阿拉伯数字 function regIsDigit(fData) { var reg = new RegExp(& ...
- JavaScript 正则表达式实现表单验证
表单验证 效果图: 输入格式正确: 输入格式错误: 基本代码如下: <!DOCTYPE html> <html><head><meta charset=&qu ...
- 【前端学习-25】【day04】正则表达式、表单验证、用户名验证
[day04正则表达式] 一.正则表达式 1.1 什么是正则表达式 1.2 正则表达式的特点 二.正则表达式在js中的应用 2.1 创建正则表达式(两种方式) 三.正则表达式的特殊字符 3.1 边界符 ...
最新文章
- poj - 2243 Knight Moves
- vs与git中间的阻拦--Git failed with a fatal error. error: open(“.vs/GBA/v16/Server/sqlite3/db.lock
- 1.Python算法之枚举算法
- Struts2拦截器之FileUploadInterceptor
- Python学习笔记整理(三)Python中的动态类型简介
- 破解面试难题8个角度带你解读SQL面试技巧!
- 【算法】合并两个有序数组【LeetCode】
- 【LeetCode】【数组】题号:*54,螺旋数组
- matlab朦胧的去雾、加雾算法
- 关于黑苹果安装10.14 屏幕只显示部分区域且区域过小问题的解决方法(i7-6700+AMD vega56+微星MS-7996)
- 单链表的逆置(递归和非递归)
- 计算机无法从usb启动不了,主板不能从u盘启动怎么办
- iPhone设备上安装beta版本系统,在浏览器中搜索网址 beta.apple.com
- python制作热力图_python绘制热力图
- 本立道生:必备的基础知识
- zip压缩包解压中文乱码问题
- js 原生将元素插入到父元素首位,jquery和原生两种方式
- 【Jenkins】的四种插件安装方式
- oracle开机启动监听,配置Oracle数据库和监听随Linux系统自启动
- Linux 历史简介