首页 > 编程知识 正文

js检测类代码,在线测试js代码

时间:2024-04-24 11:43:02 阅读:333589 作者:XTIV

本文目录一览:

js 非法字符检测代码

注意:浏览器会禁止运行此脚本。你必须要让浏览可以运行脚本,才行。否则浏览器仍然会提交数据。其实我建议你用Ajax来保存数据,这样就不会出现上面的问题。

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""

html xmlns=""

head

meta http-equiv="Content-Type" content="text/html; charset=utf-8" /

title?php echo $website_title ?/title

/head

body

script language="javascript"

function contain(str,charset)// 字符串包含测试函数

{

var i;

for(i=0;icharset.length;i++)

if(str.indexOf(charset.charAt(i))=0)

return true;

return false;

}

function CheckForm()

{

var oContain = document.getElementById("contain");

if(contain(oContain.value,"%()")){

alert("输入了非法字符");

return false;

}else{

return true;

// alert("true");

}

// if ((contain(document.form.NAME.value,"%()")) || (contain(document.form.MESSAGE.value,"%()")))

// {

//

// alert("输入了非法字符");

// document.form.NAME.focus();

// return false;

// }else{

// alert("dddd");

// return true;

// }

}

/script

form id="form" name="form" onsubmit='if(CheckForm())return true;else return false;' method="POST" action="%=MM_editAction%"

label

input type="text" id="contain" name="contain" id="contain"/

/label

label

input type="submit" name="Submit" value="提交" /

/label

input type="hidden" name="MM_insert" value="form"

/form

/body

Js注入检测函数咋办

答:首先要截获检测函数的动态代码,动态执行js代码有两种方法,一是eval,二是function。

现在很多网站都上了各种前端反爬手段,无论手段如何,最重要的是要把包含反爬手段的前端javascript代码加密隐藏起来,然后在运行时实时解密动态执行。

动态执行js代码无非两种方法,即eval和Function。那么,不管网站加密代码写的多牛,我们只要将这两个方法hook住,即可获取到解密后的可执行js代码。

注意,有些网站会检测eval和Function这两个方法是否原生,因此需要一些小花招来忽悠过去

求前端验证js代码

这是一般表单中会用到的 1. 长度限制

script

function test()

{

if(document.a.b.value.length50)

{

alert(”不能超过50个字符!”);

document.a.b.focus();

return false;

}

}

/script

form name=a onsubmit=”return test()”

textarea name=”b” cols=”40″ wrap=”VIRTUAL” rows=”6″/textarea

input type=”submit” name=”Submit” value=”check”

/form

2. 只能是汉字

input onkeyup=”value=”/oblog/value.replace(/[^u4E00-u9FA5]/g,”)”

3.” 只能是英文

script language=javascript

function onlyEng()

{

if(!(event.keyCode=65event.keyCode=90))

event.returnvalue=false;

}

/script

input onkeydown=”onlyEng();”

4. 只能是数字

script language=javascript

function onlyNum()

{

if(!((event.keyCode=48event.keyCode=57)||(event.keyCode=96event.keyCode=105)))

//考虑小键盘上的数字键

event.returnvalue=false;

}

/script

input onkeydown=”onlyNum();”

5. 只能是英文字符和数字

input onkeyup=”value=”/oblog/value.replace(/[W]/g,””) “onbeforepaste=”clipboardData.setData(’text’,clipboardData.getData(’text’).replace(/[^d]/g,”))”

6. 验证邮箱格式

SCRIPT LANGUAGE=javascript RUNAT=Server

function isEmail(strEmail) {

if (strEmail.search(/^w+((-w+)|(.w+))*@[A-Za-z0-9]+((.|-)[A-Za-z0-9]+)*.[A-Za-z0-9]+$/) != -1)

return true;

else

alert(”oh”);

}

/SCRIPT

input type=text onblur=isEmail(this.value)

7. 屏蔽关键字(这里屏蔽***和****)

script language=”javascript1.2″

function test() {

if((a.b.value.indexOf (”***”) == 0)||(a.b.value.indexOf (”****”) == 0)){

alert(”:)”);

a.b.focus();

return false;}

}

/script

form name=a onsubmit=”return test()”

input type=text name=b

input type=”submit” name=”Submit” value=”check”

/form

8. 两次输入密码是否相同

FORM METHOD=POST ACTION=”"

input type=”password” id=”input1″

input type=”password” id=”input2″

input type=”button” value=”test” onclick=”check()”

/FORM

script

function check()

{

with(document.all){

if(input1.value!=input2.value)

{

alert(”false”)

input1.value = “”;

input2.value = “”;

}

else document.forms[0].submit();

}

}

/script

够了吧 :)

屏蔽右键 很酷

oncontextmenu=”return false” ondragstart=”return false” onselectstart=”return false”

加在body中

2.1 表单项不能为空

script language=”javascript”

!–

function CheckForm()

{

if (document.form.name.value.length == 0) {

alert(”请输入您姓名!”);

document.form.name.focus();

return false;

}

return true;

}

/script

2.2 比较两个表单项的值是否相同

script language=”javascript”

!–

function CheckForm()

if (document.form.PWD.value != document.form.PWD_Again.value) {

alert(”您两次输入的密码不一样!请重新输入.”);

document.ADDUser.PWD.focus();

return false;

}

return true;

}

/script

2.3 表单项只能为数字和”_”,用于电话/银行帐号验证上,可扩展到域名注册等

script language=”javascript”

!–

function isNumber(String)

{

var Letters = ”1234567890-”; //可以自己增加可输入值

var i;

var c;

if(String.charAt( 0 )==’-')

return false;

if( String.charAt( String.length - 1 ) == ’-’ )

return false;

for( i = 0; i String.length; i ++ )

{

c = String.charAt( i );

if (Letters.indexOf( c ) 0)

return false;

}

return true;

}

function CheckForm()

{

if(! isNumber(document.form.TEL.value)) {

alert(”您的电话号码不合法!”);

document.form.TEL.focus();

return false;

}

return true;

}

/script

2.4 表单项输入数值/长度限定

script language=”javascript”

!–

function CheckForm()

{

if (document.form.count.value 100 || document.form.count.value 1)

{

alert(”输入数值不能小于零大于100!”);

document.form.count.focus();

return false;

}

if (document.form.MESSAGE.value.length10)

{

alert(”输入文字小于10!”);

document.form.MESSAGE.focus();

return false;

}

return true;

}

//–

/script

2.5 中文/英文/数字/邮件地址合法性判断

SCRIPT LANGUAGE=”javascript”

!–

function isEnglish(name) //英文值检测

{

if(name.length == 0)

return false;

for(i = 0; i name.length; i++) {

if(name.charCodeAt(i) 128)

return false;

}

return true;

}

function isChinese(name) //中文值检测

{

if(name.length == 0)

return false;

for(i = 0; i name.length; i++) {

if(name.charCodeAt(i) 128)

return true;

}

return false;

}

function isMail(name) // E-mail值检测

{

if(! isEnglish(name))

return false;

i = name.indexOf(” at ”);

j = name dot lastIndexOf(” at ”);

if(i == -1)

return false;

if(i != j)

return false;

if(i == name dot length)

return false;

return true;

}

function isNumber(name) //数值检测

{

if(name.length == 0)

return false;

for(i = 0; i name.length; i++) {

if(name.charAt(i) ”0″ || name.charAt(i) ”9″)

return false;

}

return true;

}

function CheckForm()

{

if(! isMail(form.Email.value)) {

alert(”您的电子邮件不合法!”);

form.Email.focus();

return false;

}

if(! isEnglish(form.name.value)) {

alert(”英文名不合法!”);

form.name.focus();

return false;

}

if(! isChinese(form.cnname.value)) {

alert(”中文名不合法!”);

form.cnname.focus();

return false;

}

if(! isNumber(form.PublicZipCode.value)) {

alert(”邮政编码不合法!”);

form.PublicZipCode.focus();

return false;

}

return true;

}

//–

/SCRIPT

2.6 限定表单项不能输入的字符

script language=”javascript”

!–

function contain(str,charset)// 字符串包含测试函数

{

var i;

for(i=0;icharset.length;i++)

if(str.indexOf(charset.charAt(i))=0)

return true;

return false;

}

function CheckForm()

{

if ((contain(document.form.NAME.value, ”%()”)) || (contain(document.form.MESSAGE.value, ”%()”)))

{

alert(”输入了非法字符”);

document.form.NAME.focus();

return false;

}

return true;

}

//–

/script

1. 检查一段字符串是否全由数字组成

—————————————

script language=”Javascript”!–

function checkNum(str){return str.match(/D/)==null}

alert(checkNum(”1232142141″))

alert(checkNum(”123214214a1″))

// –/script

2. 怎么判断是否是字符

—————————————

if (/[^x00-xff]/g.test(s)) alert(”含有汉字”);

else alert(”全是字符”);

3. 怎么判断是否含有汉字

—————————————

if (escape(str).indexOf(”%u”)!=-1) alert(”含有汉字”);

else alert(”全是字符”);

4. 邮箱格式验证

—————————————

//函数名:chkemail

//功能介绍:检查是否为Email Address

//参数说明:要检查的字符串

//返回值:0:不是 1:是

function chkemail(a)

{ var i=a.length;

var temp = a.indexOf(’@');

var tempd = a.indexOf(’.');

if (temp 1) {

if ((i-temp) 3){

if ((i-tempd)0){

return 1;

}

}

}

return 0;

}

5. 数字格式验证

—————————————

//函数名:fucCheckNUM

//功能介绍:检查是否为数字

//参数说明:要检查的数字

//返回值:1为是数字,0为不是数字

function fucCheckNUM(NUM)

{

var i,j,strTemp;

strTemp=”0123456789″;

if ( NUM.length== 0)

return 0

for (i=0;iNUM.length;i++)

{

j=strTemp.indexOf(NUM.charAt(i));

if (j==-1)

{

//说明有字符不是数字

return 0;

}

}

//说明是数字

return 1;

}

6. 电话号码格式验证

—————————————

//函数名:fucCheckTEL

//功能介绍:检查是否为电话号码

//参数说明:要检查的字符串

//返回值:1为是合法,0为不合法

function fucCheckTEL(TEL)

{

var i,j,strTemp;

strTemp=”0123456789-()# “;

for (i=0;iTEL.length;i++)

{

j=strTemp.indexOf(TEL.charAt(i));

if (j==-1)

{

//说明有字符不合法

return 0;

}

}

//说明合法

return 1;

}

7. 判断输入是否为中文的函数

—————————————

function ischinese(s){

var ret=true;

for(var i=0;is.length;i++)

ret=ret (s.charCodeAt(i)=10000);

return ret;

}

8. 综合的判断用户输入的合法性的函数

—————————————

script language=”javascript”

//限制输入字符的位数开始

//m是用户输入,n是要限制的位数

function issmall(m,n)

{

if ((mn) (m0))

{

return(false);

}

else

{return(true);}

}

9. 判断密码是否输入一致

—————————————

function issame(str1,str2)

{

if (str1==str2)

{return(true);}

else

{return(false);}

}

10. 判断用户名是否为数字字母下滑线

—————————————

function notchinese(str){

var reg=/[^A-Za-z0-9_]/g

if (reg.test(str)){

return (false);

}else{

return(true); }

}

2.8. form文本域的通用校验函数

—————————————

作用:检测所有必须非空的input文本,比如姓名,账号,邮件地址等等。

该校验现在只针对文本域,如果要针对form里面的其他域对象,可以改变判断条件。

使用方法:在要检测的文本域中加入title文字。文字是在提示信息,你要提示给用户的该字段的中文名。比如要检测用户名

html如下input name=”txt_1″ title=”姓名”,当然,最好用可视化工具比如dreamweaver什么的来编辑域。

如果要检测数字类型数据的话,再把域的id统一为sz.

javascript判断日期类型比较麻烦,所以就没有做日期类型校验的程序了.高手可以补充。

程序比较草,只是提供一个思路。抛砖引玉! :)

哦,对了,函数调用方法:

form onsubmit=”return dovalidate()”

function dovalidate()

{

fm=document.forms[0] //只检测一个form,如果是多个可以改变判断条件

for(i=0;ifm.length;i++)

{

//检测判断条件,根据类型不同可以修改

if(fm[i].tagName.toUpperCase()==”INPUT” fm[i].type.toUpperCase()==”TEXT” (fm[i].title!=”"))

if(fm[i].value=”/blog/=”")//

{

str_warn1=fm[i].title+”不能为空!”;

alert(str_warn1);

fm[i].focus();

return false;

}

if(fm[i].id.toUpperCase()==”SZ”)//数字校验

{

if(isNaN(fm[i].value))

{ str_warn2=fm[i].title+”格式不对”;

alert(str_warn2);

fm[i].focus();

return false;

}

}

}

return true;

}

如何测试js代码

可以直接用谷歌浏览器测试。

谷歌浏览器开发者工具比较全面,可以打断点,可以查看调用栈,同时可以查看html和css的变化情况,所以一般情况使用谷歌浏览器测试js就可以了。

其他的开发工具,虽然也有js调试,但是可能不能跟踪html,css等的变化。

求一段js 判断设备跳转网页的代码

一般来说,你这个需求不难办到。思路无非两条,检测UA以及特性检测。

这两种方法可以说各有利弊。

UA检测来说,比较简单、准确、适用面广并且易扩充。

navigator.userAgent.match(/Android/i)  // 判断是否是Android设备

navigator.userAgent.match(/iPhone|iPad|iPod/i)  // 判断是否为iOS设备

通过以上的操作就可以很方便的检测用户使用的是什么设备。并且一次类推,几乎可以判断所有的浏览器。

不过UA检测的缺陷也是非常明显的,就是无法判断伪装的浏览器。大部分浏览器都会修改自己的UA,以适配更多的网站,甚至很多移动端的浏览器还支持自定义UA。所以使用UA检测准确,但不一定正确。

另外就是特性检测,特性检测顾名思义,是通过用户浏览器拥有的特性来检测,例如说判断浏览器是否支持某些内置方法来进行判断,或者通过浏览器的怪癖(例如说有些低版本的IE会在解析某些设置时显得跟别人颇为不同)来进行判断。

他的优势是可以真正的检测到浏览器的类型,识破伪装。

不过劣势是非常明显的,就是比较繁琐,并且很麻烦,浏览器版本升级后可能就失效了。

所以建议你使用UA检测或者jQuery Migrate之类的插件。

高分!!求js代码。可以验证一串字符串中里面的引号,括号。尖括号左右匹配的?

用正则表达式比较简单、

还可以用String类的方法判断、

如:

String str ="!@~#$%^*()_+";//将特殊字符保存到str里面

String strchar = str.substring(int temp1,int temp2);//用这方法取得字符

strchar.equals("*")//用这方法判断取出来的字符和你所要比较的字符

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。