この記事では、参照用のソースコードを実装するための非常に実用的なJS検証フレームワークを共有します。特定のコンテンツは次のとおりです
重要な方法と原則:
if(!eval(scriptcode))in the function check(thisinput)メソッド{return false; }コール例:
コードコードを次のようにコピーします。<入力タイプ= "テキスト" name = "progress_payment_two" id = "progress_payment_two" inputname = "progress painio 2 ratio(%)" validate = "isnumer; notnull" maxlength = "350" value = "" " />
iS数式とnotNullメソッドは、検証中に自動的に呼び出され、検証結果情報が返されます。
var configvalidateinfotype = "writealert"; // writealertとwritepageをサポート、 "writepage; writealert" var rmtempstatusisalert = false; var rmtempstatusisfocus = false; var beginValidate = true; var set_all_venus_inputs_default = true; string.prototype.trim = function(){return this.replace(/(^/s*)|(/s*$)/g、 ""); }関数checkallforms(){var checkResult = true; rmtempstatusisalert = false; rmtempstatusisfocus = false; setallvenusinputsdefault(); for(var i = 0; i <document.forms.length; i ++){for(var j = 0; j <document.forms [i] .elements.length; j ++){var thisinput = document.forms [i] .elements [j]; if(thisinput.type!= "hidden" && thisinput.type!= "button" &&!(thisinput.id.indexof( "tf _")> = 0 && thisinput.id.indexof( "_ tf")> 0) && thisinput.clientWidth!= 0 && thisinput.style && thisinput.style.display!= 'none'){ /* if(validatestr!= null && validatestr.lenge> 0){if(thisinput.tagname == 'textarea' && srcstr!= ') if(thisinput.maxlength!= null && thisinput.maxlength> 0){if(thisinput.tagname == 'textarea' && srcstr!= ''){srcstr = facterenter(srcstr); if(thisinput.maxlength!= null && thisinput.maxlength> 0){if(getStrLength(srcstr)> thisinput.maxlength){writevalidateInfo(thisinputs "focus at long/n入力長が" +frm.maxlength +}; if(thisinput.id && thisinput.id.indexof( "supplier_id_ref _") CheckResult = checkResult; i = 0; i <validateTemp.length; i ++){validateTemp [i]。 "thisinput)" if(validateTemp [i] .indexof( "(")<0 || validateTemp [i] .indexof( ")")<0){scriptcode = "javascript:" + balidateTemp [i] + "(s、thisinput)" function "+validAteTemp [i]+"例外があります。 "+"/n "+e.message); return false;}}}} function setallvenusinputsdefault(){var frmslen = document.forms.lention; j = 0; j <inslen; j ++){var frm = document.forms [i] .elements [j] if(frm.type!= "hidden" && frm.type!= "button" &&!(frm.id.indexof( "tf _")> = 0 && frm.idexof(frm.valid) setvenusputdefault(frm); _frm.style.backgroundcolor = ""; _frm.color = "}}} //alert(indexof('/n '))if('/n ')!= -1 && indexof('/r ') str.replace( '//' // u005c '); str.replace(' // u0027 '); str.replace( '('、 '// u0028'); str = str.replace( '('、 '// u0028'); str = replace( '('、 '// u005c'); str = str.replace( '//'、 '// u0027'); str = str.replace( '); str.replace( ')'、 '// u0029'); i = 0; i <_validatestr.length; i ++){_validatestr [i] == _validator)return false;} function writevalidateinfo(info、thisobj){var inputname if(configvalidateinfotype.indexof( "writepage")> = 0){writevalidateinfoafterobject(info、thisobj); setvenusputerror(thisobj); _frm.tagname!= "select"){_frm.select(); 「ハイライト」; writevalidateinfoafterobject(info、thisobj){// write varteinfoobj = null; thisobj.nextsibling.tagname.touppercase()== "font" && thisobj.nextsibling.nextsibling.tagname.touppercase()== "span" && thisobj.nextsibling.nextsibling.classname == "font_remain_prompt") thisobj.nextsibling > 0 || if(thisobj.nextsibling!= null && thisobj.nextsibling == "hidden"){thisobj.nextsibling) == 0){inputname == null || inputname = ""; ++;} return len;}/******************************************************************************************************** {thisinput.value.trim(); thisinput)falseを返します。 } elter {true; Array [0] = "14] =" 15 "; {if(0,2)== obj [int]){mob = 1; ] {1,12})+$/; } catch {} s = s.trim(s.lents == {a-za-z0-9] {3,12} $/ Istel(s、thisinput){//それは「+」で始めることができますpatrn =/^[+] {0,1}(/d){1,3} []?([ - ]?((((/d))| []){1,12})+$/; if(!patrn.exec(s)){writevalidateinfo( 'reture in reat opent leat op the intupt; ISTELFORFAX(s、thisinput){//それは「+」で始めることができます、 "// space try {thisinput.value.value.trim() patrn =/^(/d){3,4} [ - ](/d){7,8} $/;ファックス番号:「+」で始めることができますpatrn =/^(/d){3,4} [ - ](/d){7,8} $/;スペース{thisinput.value.trim() {中国語はありませんisnum(thisinput)は、スペースを削除します。 {var c = s.charat(i); } catch {} s = s.trim(s.length == {return} number! "、thisinput); return false;} i ++;} try {if(thisinput.value <= 0){writeValidateInfo("入力値はゼロより大きくなければなりません! "、thisinput! thisinput.value.trim(); /^(([[0-9A-ZA-Z]+)|([0-9A-ZA-Z]+[_。0-9A-ZA-Z-]*[0-9A-ZA-Z]+))@(([A-ZA-Z0-9-]+[ 。]+([a-za-z] {2} | net | net | net | com | com | gov | gov | mil | org | edu | edu | edu | int | int)$/; (regul.exec(s)){writevalidateinfo(「有効な電子メールアドレスを入力してください!」値! '、thisinput); false} return true;} /******************************************************************************************************** ***************************************************************************************************** NotNull *****************************************************************(s、thisinput) 0){writevalidateinfo(このアイテムは空にすることはできません!} falter false;} var reg = "0123456789"; is-normalstronweb(s、thisinput){//それは通常の文字(非htmlタグ)if(0,1)== "<" || substring(0,1)== "){writevalidateinfo if(!holdcode(s)){writeValidateInfo( "Focus/"・/"//" - /"//" - /"//" - /"//" - /"/"/"/"/" - /" // " - /"/"//"/"/"/"/"/"/"/"/"/"/"/"/"/"/"/"/"/"/"/"/"/"/"/"/"/" - /"/" - /" // " 0){if(s.indexof( "/" ")> -1){writeValidateInfo("二重引用符はフォーカスで入力できません!! "、thisinput); -1){writeValidateInfo( ""フォーカスで入力できない "、thisinput); return false;}} //基本関数リスト関数jtrim(str){// de -space function var i = 0; var len = str.length; if(str ==" ")return(str); var flaggin; var flaggin; var flaggin; var flaggin; && i <if(i)== "){i+1; ( "); digits.indexof(c)== -1){false; /****************************************************************************************************************** Venus Web JavaScriptコード:HTC一般的なフォーム検査(存在完成) VALIDATEFORM(current_form){for(var i = 0; i <current_form.length; i ++){if(current_form [i] .type == "text" || current_form [i] .type == "radio"){if(current_form [i] .value.substring(0,1)= "<|| current_full_ [i] =" < 「/>」焦点の長さ/n入力の長さが " +current_form [i] .focus()内にあることを確認してください。フォーカス/"・/" // " - /" // " - /" // " - /" // " - /" - /"//" - /")); current_form [i] .focus(); current_form [i] .select().select(); return fals;} if(!is_empty(current_form [i]) "ScriptDefine"){true; Space Try.Value.Value.Trim() } catch(e){}} checknumberimpl(s、maxlength、scale){//最大10-2の整数部をチェックします。 if(!isfloatnumber(s)){s.indexof( "。")> 0){s.indexof( ")<= math.round(s*(10、scale))))))))) (maxlents -scale); thisinput.value.trim() (c)== -1){「有効な数字を入力してください!」 Issearch(s、thisinput){//(s.length == 0)trueを返す場合patrn =/^[^`〜!@#$%^&*()+= |////] [/]/{/}:; '/、。<>/?] {1} [^$%^&()+= | // /[^//1.//,<>"'_ }/]/ // =========================================================================== =============================================================================== *整数を含む整数または数字を含む(thisinput){thisinput.value.value.trim() (!reg.test){writevalidateInfo(「ポジティブ整数または小数」、thisinput) value.trim(); */fulicatedinput.value = thisinput.value.trim(){} value = value.trim(); {writevalidateInfo(「整数または小数を入力してください(整数には10桁しかありません!」、thisinput) } catch(e){} value.trim(); thisinput)は、falseを返します/^(1,14} (/d {1,4})if(!reg.test(value)) thisinput){thisinput.value.trim(){} value.trim(); writevalidateInfo(最大3桁、最大2桁の場所)を入力してくださいut.value = thisinput.value.trim(); } catch(e){} value = value.trim(); if(value.length == 0){return true; } var reg = /^/w+([ - +.] if(!reg.test(value)){writevalidateInfo( "正しいメールアドレスを入力してください!"、thisinput); falseを返します。 } return true;} /*** IDカード(15ビットまたは18ビットIDカード)を確認します。 */function checkidcard(value、thisinput){//スペースを削除してくださいtry {thisinput.value = thisinput.value.trim(); } catch(e){} value = value.trim(); if(value.length == 0){return true; } var reg =/^/d {15}(/d {2} [a-za-z0-9])?$/; if(!reg.test(value)){writevalidateInfo( "正しいID番号を入力してください!"、thisinput); falseを返します。 } true;} /***郵便番号を確認します。 */function checkpostcode(value、thisinput){//スペースを削除{thisinput.value = thisinput.value.trim(); } catch(e){} value = value.trim(); if(value.length == 0){return true; } var reg =/^[0-9]/d {5} $/; if(!reg.test(value)){writevalidateInfo( "正しい郵便番号を入力してください!"、thisinput); falseを返します。 } return true;} /***それが漢字であるかどうかを確認します。 */function checkchinese(value、thisinput){//スペースを削除してください{thisinput.value = thisinput.value.trim(); } catch(e){} value = value.trim(); if(value.length == 0){return true; } var reg =/^[/u0391-/uffe5]+$/; if(!reg.test(value)){writevalidateInfo( "漢字を入力してください!"、thisinput); falseを返します。 } return true;} /***それが違法な性格であるかどうかを確認します。 */function checkinvalidString(value、thisinput){var reg = /^ [^ `~!@#$ %^ &:()+=|//] if(!reg.exec(value)){writevalidateInfo( "入力された文字に特殊文字が含まれている、再入力してください!"、thisinput); falseを返します。 } trueを返します。 } function checkmoney(s、inputname){//スペースを削除してくださいtry {thisinput.value = thisinput.value.trim(); } catch(e){} s = s.trim(); if(s.length == 0){return true; } if(s == ""){writeValidateInfo( "額は空になりません!"、inputName); falseを返します。 } if(isfloatnumber(s、inputname)== false){writeValidateInfo( "違法な金額値!"、inputName); falseを返します。 } var maxlength = 10; varスケール= 2; return checknumberimpl(s、maxlength、scale、inputname);}/** *スコアが0-100 */function isAdultage(str、thisinput){// integer //スペースを削除するかどうかを確認してください{thisinput.value = thisinput.value.trim(); } catch(e){} str = str.trim(); if(str.length == 0){return true; } if(parseint(str)<0 || parseint(str)> 100){writevalidateInfo( '法的スコア(0--100)!'、thisinputを入力してください); falseを返します。 } return true;} /** *レベル6強度設定(番号、大文字、小文字、特殊文字、長さ> = 6、長さ> = 10) for(var i = 0; i <pwd.length; i ++){var c = pwd.charcodeat(i); if(c> = 48 && c <= 57)// number sum [0] = 1; else if(c> = 65 && c <= 90)//大文字[1] = 1; else if(c> = 97 && c <= 122)//小文字[1] = 1; else //特別文字和[2] = 1; } var level = sum [0] + sum [1] + sum [2]; if(pwd.length> = 8)level ++; return level;}関数isbiggerzero(value、thisinput){//既に数値、次に0より大きくする必要があります(thisinput.value <= 0){writeValidateInfo( 'ゼロを超える数字を入力してください!'、thisinput); falseを返します。 } return true;} function isnonegative(value、thisinput){if(thisinput.value <0){writevalidateInfo( '非否定番号を入力してください!'、thisinput); falseを返します。 } return true;} /** * berify number(20,6) * /function isnum20p6(value、thisinput){// space space try {thisinput.value = thisinput.value.trim(); } catch(e){} value = value.trim(); if(value.length == 0){return true; } var reg = /^(-)?/d {1,14 }(/./d {1,6})?$/; if(!reg.test(value)){writeValidateInfo( "数字(最大14整数桁と最大6桁)を入力してください!"、thisinput); falseを返します。 } return isbiggerzero(value、thisinput);} /** * number(18,6) * /function isnum18p6(value、thisinput){//スペースを削除{thisinput.value = thisinput.value.trim(); } catch(e){} value = value.trim(); if(value.length == 0){return true; } var reg = /^(-)?/d {1,12 }(/./d {1,6 }) ?$/; if(!reg.test(value)){writeValidateInfo( "数値(最大12整数桁と最大6進数桁)を入力してください!"、thisinput); falseを返します。 } return isbiggerzero(value、thisinput);} function isnonnegative20p6(value、thisinput){//スペースを削除してください{thisinput.value = thisinput.value.trim(); } catch(e){} value = value.trim(); if(value.length == 0){return true; } var reg = /^(-)?/d {1,14 }(/./d {1,6})?$/; if(!reg.test(value)){writeValidateInfo( "数値(最大14整数桁、最大6桁)を入力してください!"、thisinput); falseを返します。 } return isNonnegative(value、thisinput);} /** * berify number(20,4) * /function isnum20p4(value、thisinput){// space space try {thisinput.value = thisinput.value.trim(); } catch(e){} value = value.trim(); if(value.length == 0){return true; } var reg = /^(-)?/d {1,16 }(/./d {1,4 })?$/; if(!reg.test(value)){writeValidateInfo( "数字(最大16整数桁と最大4進数の場所)を入力してください!"、thisinput); falseを返します。 } return isbiggerzero(value、thisinput);} /***サプライヤーが入力した単一のマージンのバッチの量は正の整数であり、数百桁にしか正確ではありません* /function isdpcbzj(value、thisinput){//スペースを削除します{thisinput.value = thisint.value.trim(); } catch(e){} value = value.trim(); if(value.length == 0){return true; } var reg =/^[1-9]/d*00 $/; if(!reg.test(value)){writevalidateInfo( "正しいマージン量を入力してください!"、thisinput); falseを返します。 } return true;} //レポートの入札年の開始年は終了年balidateyear(startyear、endyear、flag)よりも大きくないと判断します(flag == 1){if(flag == 1){alert( "開始月は終了月よりも大きくできません"); falseを返します。 } else {alert( "入札の開始年は終了年よりも大きくすることはできません"); falseを返します。 }} return true;}上記はこの記事に関するものであり、誰もがJavaScriptプログラミングを学ぶことが役立つことを願っています。