整理了一些JS的常用方法,包括验证啊,全选反选啊,ajax请求啊之类的,因为就是自己用的,写的都比较简单,就算抛砖引玉吧,喜欢的就拿去,不喜欢就拉到
Tools.min.js
/** * JS公用类库文件 * 创建时间:2015-05-13 * 创建人:mction */ (function(){ var D = document; var W = window; var Postfix = '.php' var _Id = function(Id){return document.getElementById(Id);}; Check = { Input:function(Name,Value,Message){ var Input = $(":input[name='"+Name+"']"); if(Input.val() == Value){ Input.focus(); alert(Message); return true; } return false; }, Phone:function(Name){ /* * 联通号段:130/131/132/155/156/185/186/145/176; * 电信号段:133/153/180/181/189/177; * 移动号段:134/135/136/137/138/139/150/151/152/157/158/159/182/183/184/187/188/147/178 */ var Reg = /^1(30|31|32|55|56|85|86|45|76|33|53|80|81|89|77|34|35|36|37|38|39|50|51|52|57|58|59|82|83|84|87|88|47|78)[0-9]{8}$/; var Phone = $(":input[name='"+Name+"']"); if(!Reg.test(Phone.val())){ Phone.focus(); return true; } return false; }, Email:function(Name){ var Reg = /^[a-zA-Z0-9_]+@[a-z0-9]+\.[a-z]+$/; var Email = $(":input[name='"+Name+"']"); if(!Reg.test(Email.val())){ Email.focus(); return true; } return false; }, UserName:function(UserNameMark,Message){ var Reg = /^[\d]{8}$/; var UserName = $(":input[name='"+UserNameMark+"']"); if(!Reg.test(UserName.val())){ UserName.focus(); alert(Message); return true; } return false; }, Password:function(Name){ var Reg = /^([A-Z]+)$|^([a-z]+)$|^([0-9]+)$|^([-`=\\\[\];',\.\/~!@#\$%\^&\*\(\)_+\|\{}:"<>\?]+)$|^.{0,5}$|^.{18,}$/ var Password = $(":input[name='"+Name+"']"); if(Reg.test(Password.val())){ Password.focus(); return true; }else{ return false; } } }; Member = { Login:function(){ var UserName = $(":input[name='username']"); var PassWord = $(":input[name='password']"); if(Check.UserName("username","用户名格式不正确")){ return false; } if(Check.Input("password",'',"密码不能为空")){ return false; } $.ajax({ url:"/User/action"+Postfix, type:"POST", data:{ request:"Login", username:UserName.val(), password:PassWord.val() }, dataType:"json", success:function(Data){ if(Data.state != 200){ alert(Data.message); return false; }else{ location.href= "/User/member"+Postfix; } } }); }, Logout:function(){ location.href = '/User/Logout'+Postfix; } }; Public = { Hi:function(){alert('hi');}, Box_All_Sel:function(Class,AllChecked){//全选反选 var Input = D.getElementsByTagName("input"); var BoxList = []; for(I =0;I<Input.length;I++){ if(Input[I].type == "checkbox" && Input[I].className == Class){ BoxList.push(Input[I]); } } if(AllChecked){ for(I in BoxList){ BoxList[I].checked = true; } }else{ for(I in BoxList){ BoxList[I].checked = BoxList[I].checked ? false : true; } } }, After:function(New,Tar){ if(typeof Tar == 'string'){ var Parent = _Id(Tar); }else{ var Parent = Tar; } if(Parent.parentNode == Parent){ Parent.parentNode.appendChild(New); }else{ Parent.parentNode.insertBefore(New,Parent.nextSibling); } }, Requests:function(O,Class){ //批量请求 //url.request.message.input.inputMessage.inputValue var Data = $("."+ Class +":checked").serialize(); if(Data == ''){ alert("您没有选中任何项"); //alert(O.options[0].value); O.value = O.options[0].value; return; } var TempArr = O.value.split('.'); if(!TempArr[0] || !TempArr[1]){ //验证URL及动作 alert("错误:缺少必须参数"); O.value = O.options[0].value; return; } Data += "&request=" + TempArr[1]; var Message = "确认删除选中项吗?"; if(TempArr[2]){ //验证并设置提示消息 Message = TempArr[2]; } if(confirm(Message)){ var Input = false; if(TempArr[3]){ //验证并设置是否接收用户输入 Input = true; } if(Input == 'True'){ var InputVal = prompt(TempArr[4],TempArr[5]); Data += "&input=" + InputVal; } $.ajax({ url:"./"+TempArr[0]+Postfix, type:'GET', data:Data, dataType:'json', async:false, success:function(Data){ alert(Data.message); location.reload(true); } }); } }, Request : {//单次请求 Data : '', MetHod : '', DataType : '', Async : '', SetData:function(Options,MetHod,DataType,Async){ this.Data = Options; this.MetHod = typeof MetHod == 'undefined' ? 'GET' : MetHod; this.DataType = typeof DataType == 'undefined' ? 'json' : DataType; this.Async = typeof Async == 'undefined' ? true : Async; return this; }, Send:function(Url,Call,IM,Message){ if(!Message){ Message = "确认删除吗?"; } if(typeof Call != 'function'){ Call = function(Data){ switch(this.dataType){ case 'text' :alert(Data);break; default :alert(Data.message);break } location.reload(true); } } var CF = true; var CFM = true; var LId; if(typeof IM != 'undefined' && IM == false){CF = false} if(CF && !confirm(Message)){CFM = false;} if(CFM){ $.ajax({ url:Url, type:this.MetHod, data:this.Data, dataType:this.DataType, async:this.Async, beforeSend:function(O){LId = Public.Loading.Open("正在处理中");}, success:Call, error:function(E,Info,EO){alert(E.statusText + ":" + E.responseText);}, complete:function(O){Public.Loading.Close(LId);} }); } } }, Desc : { DescId : '', Display:function(O,Message){ var Id = parseInt(Math.random() * 1000); this.DescId = Id; var Desc = D.createElement('description'); Desc.id = Id; Desc.innerHTML = Message; Desc.style.width = "200px"; Desc.style.border = "1px solid #dfdfdf"; Desc.style.backgroundColor = "#fff"; Desc.style.lineHeight = "normal"; Desc.style.position = "absolute"; Desc.style.top = O.offsetTop + 'px'; Desc.style.marginLeft = "5px"; Public.After(Desc,O); O.setAttribute("onblur",'Public.Desc.Close()'); }, Close:function(){ $("#"+this.DescId).remove(); } }, Options : { File_Input:function(Obj){//添加文件选择框 var chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; var ObjName = ''; for (var i = 0; i < 5; i++) { ObjName += chars.charAt(Math.floor(Math.random() * chars.length)); } var InputFile = D.createElement("input"); InputFile.type = "file"; InputFile.name = ObjName; InputFile.accept = "image/*"; var A = D.createElement("a"); A.href = "javascript:;"; A.style.marginLeft = "300px"; A.innerHTML = "删除"; A.setAttribute("onclick",'$("div").remove("#'+ObjName+'")'); var Div = D.createElement("div"); Div.id = ObjName; Div.style.padding = "5px"; Div.style.borderBottom = "1px solid #cccccc"; Public.After(Div,Obj); _Id(ObjName).appendChild(InputFile); _Id(ObjName).appendChild(A); } }, Loading : { WindowId:'', Open:function(Message){ var Id = parseInt(Math.random() * 1000); this.WindowId = Id; var Div = D.createElement("div"); Div.id = Id; Div.style.width = "80%"; Div.style.height = "50px"; Div.style.backgroundColor = "#000"; Div.style.opacity = "0.5"; Div.style.borderRadius = "10px"; Div.style.position = "fixed"; Div.style.top = (W.innerHeight - 50) / 2 + "px"; Div.style.left = "10%"; var P = D.createElement("p"); P.style.textAlign = "center"; P.style.color = "#fff"; P.style.lineHeight = "50px"; P.style.height = "50px"; var Img = D.createElement('img'); Img.src = "/phps/Public/images/loading.gif"; Img.style.marginBottom = "-5px"; if(Message){ P.innerHTML = Message; }else{ P.innerHTML = "正在处理中"; } P.appendChild(Img); D.getElementsByTagName("body")[0].appendChild(Div); _Id(this.WindowId).appendChild(P); return Id; }, Close:function(Id){ if(typeof Id != 'undefined' && Id != null){ D.getElementsByTagName("body")[0].removeChild(_Id(Id)); }else if(this.WindowId != ''){ D.getElementsByTagName("body")[0].removeChild(_Id(this.WindowId)); } } }, Tabs : { TabsNum : 1, TabListId : '', WindowId : '', New_Tabs:function(TabListId,WindowId,OpenUrl,PageTitle){ this.TabListId = TabListId; this.WindowId = WindowId; var IframeList = _Id(WindowId).getElementsByTagName("iframe"); //alert(Iframe.length); for(I = 0;I < IframeList.length;I ++){ IframeList[I].style.display = "none"; } var TabList = _Id(TabListId).getElementsByTagName("li"); //alert(TabList); for(I = 0;I < TabList.length;I ++){ TabList[I].className = ""; } var Iframe = D.createElement("iframe"); Iframe.id = "IFR"+this.TabsNum; Iframe.src = OpenUrl; Iframe.frameborder = 0; Iframe.width = "100%"; Iframe.height = "100%"; var A = D.createElement("a"); A.href = "javascript:;"; A.id = "IFA"+this.TabsNum; A.innerHTML = PageTitle; A.setAttribute("data-if",Iframe.id); A.setAttribute("onclick","Public.Tabs.View(this)"); var Li = D.createElement("li"); Li.id = "IFL"+this.TabsNum; Li.className = "on"; Li.setAttribute("data-if",Iframe.id); var Close = D.createElement("a"); Close.href = "javascript:;"; Close.innerHTML = " x "; Close.setAttribute("data-li",Li.id); Close.setAttribute("data-if",Iframe.id); Close.setAttribute("onclick","Public.Tabs.Close(this)"); this.TabsNum++; _Id(TabListId).appendChild(Li); _Id(Li.id).appendChild(A); _Id(Li.id).appendChild(Close); _Id(WindowId).appendChild(Iframe); }, View:function(O){ var IframeList = _Id(this.WindowId).getElementsByTagName("iframe"); for(I = 0;I < IframeList.length;I ++){ IframeList[I].style.display = "none"; } var TabList = _Id(this.TabListId).getElementsByTagName("li"); for(I = 0;I < TabList.length;I ++){ TabList[I].className = ""; } O.parentNode.className = "on"; _Id(O.getAttribute('data-if')).style.display = "block"; }, Close:function(O){ var LiO = _Id(O.getAttribute("data-li")); var IFO = _Id(O.getAttribute("data-if")); if(LiO.nextElementSibling){ var DisPlayLi = LiO.nextElementSibling; }else{ var TabList = _Id(this.TabListId).getElementsByTagName("li"); var DisPlayLi = TabList[TabList.length - 2]; } if(IFO.nextElementSibling){ var DisPlayIF = IFO.nextElementSibling; }else{ var IfList = _Id(this.WindowId).getElementsByTagName("iframe"); var DisPlayIF = _Id(IfList[IfList.length - 2].id); } LiO.parentNode.removeChild(LiO); IFO.parentNode.removeChild(IFO); DisPlayLi.className = "on"; DisPlayIF.style.display = "block"; } } }; })();
这些是JAVASCRIPT的基本知识,如果是新手的话,我觉得这些不够你们学习,你可以去找些资料完整的学习下JAVASCRIPT。
这些对于已经有一些JAVASCRIPT基础的朋友,可以先浏览下这些知识,或许其中有你已经遗忘的或者遗漏的,回忆下JAVASCRIPT对你后面继续深入学下AJAX有很大的帮助。

JavaScript字符串替換方法詳解及常見問題解答 本文將探討兩種在JavaScript中替換字符串字符的方法:在JavaScript代碼內部替換和在網頁HTML內部替換。 在JavaScript代碼內部替換字符串 最直接的方法是使用replace()方法: str = str.replace("find","replace"); 該方法僅替換第一個匹配項。要替換所有匹配項,需使用正則表達式並添加全局標誌g: str = str.replace(/fi

因此,在這裡,您準備好了解所有稱為Ajax的東西。但是,到底是什麼? AJAX一詞是指用於創建動態,交互式Web內容的一系列寬鬆的技術。 Ajax一詞,最初由Jesse J創造

本文討論了在瀏覽器中優化JavaScript性能的策略,重點是減少執行時間並最大程度地減少對頁面負載速度的影響。

本文討論了使用瀏覽器開發人員工具的有效JavaScript調試,專注於設置斷點,使用控制台和分析性能。

將矩陣電影特效帶入你的網頁!這是一個基於著名電影《黑客帝國》的酷炫jQuery插件。該插件模擬了電影中經典的綠色字符特效,只需選擇一張圖片,插件就會將其轉換為充滿數字字符的矩陣風格畫面。快來試試吧,非常有趣! 工作原理 插件將圖片加載到畫布上,讀取像素和顏色值: data = ctx.getImageData(x, y, settings.grainSize, settings.grainSize).data 插件巧妙地讀取圖片的矩形區域,並利用jQuery計算每個區域的平均顏色。然後,使用

本文將引導您使用jQuery庫創建一個簡單的圖片輪播。我們將使用bxSlider庫,它基於jQuery構建,並提供許多配置選項來設置輪播。 如今,圖片輪播已成為網站必備功能——一圖胜千言! 決定使用圖片輪播後,下一個問題是如何創建它。首先,您需要收集高質量、高分辨率的圖片。 接下來,您需要使用HTML和一些JavaScript代碼來創建圖片輪播。網絡上有很多庫可以幫助您以不同的方式創建輪播。我們將使用開源的bxSlider庫。 bxSlider庫支持響應式設計,因此使用此庫構建的輪播可以適應任何

數據集對於構建API模型和各種業務流程至關重要。這就是為什麼導入和導出CSV是經常需要的功能。在本教程中,您將學習如何在Angular中下載和導入CSV文件


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

禪工作室 13.0.1
強大的PHP整合開發環境

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具