javascript与标签

 

JavaScript的一些属性只有在struts标签里才有效 比如document.struts配置文件中的Form.value就只能使用struts<.html:form>标签。

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

1)函数调用方法:< form  οnsubmit="return dovalidate()">

function dovalidate(){

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

    for(i=0;i<fm.length;i++){ 

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

    if(fm[i].tagName.toUpperCase()=="INPUT" &&fm[i].type.toUpperCase()=="TEXT")

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

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

         alert(str_warn1);

         fm[i].focus();

         return false;        

         }       

        }

    }

    return true;

}

2)只获取表单域要验证的项

//如果工具已经被领用,还未归还,则不能再分配给别人

       var userTypeNameObj = document.getElementsByName("userTypeName"); //每一行的使用者类型     

       var userIdObj = document.getElementsByName("userId"); //每一行的使用者

       var toolObj= document.getElementsByName("toolIdAry"); //每一行的单选框,其值为form中的id    

       for (i=0;i<toolObj.length;i++){

           var userTypeName = userTypeNameObj[i].value;

           var userId=userIdObj[i].value;

               var tool = toolObj[i].value;        

            if (tool==confIds && (userTypeName!="" ||userId!="" )){   

                alert("此工具正在被使用,您无法领用!");

                return false; 

           }            

}    

2.表单内字符串长度验证

<script>

function test() {

if(document.a.b.value.length>50){

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

document.a.b.focus();

return false;

}

}

</script>

<form name=a οnsubmit="return test()">

<textarea name="b" cols="40" wrap="VIRTUAL" rows="6"></textarea>

<input type="submit" name="Submit" value="check">

</form>  

3.表单只能为数字和"_"

1<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)判断用户名是否为数字字母下滑线

function notchinese(str){

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

    if (reg.test(str)){

    return (false);

    }else{

return(true);    }

}

3)是否为数字

1function  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;

}

2】检查一段字符串是否全由数字组成

<script language="Javascript"><!--          

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

alert(checkNum("1232142141"))          

alert(checkNum("123214214a1"))          

// --></script>    

3】数字格式验证   

function fucCheckNUM(NUM) {    

var i,j,strTemp;    

strTemp="0123456789";    

if ( NUM.length== 0)  return 0    

for (i=0;i<NUM.length;i++) {    

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

if (j==-1) //说明有字符不是数字    

return 0;    

}          

return 1;     //说明是数字

}    

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

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

var  i;

for(i=0;i<charset.length;i++)

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

return  true;

return  false;

}

function  CheckForm(){ 

if ((contain(document.form.NAME.value, "%/(/)><"))){ 

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

document.form.NAME.focus();

return  false;

}

return  true;

}

5.文本框readonly属性

<html:text property="mk_zyscfbBean.shry" styleClass="Button3" styleId="shry" readonly="true"/>

现在要点击一个按钮,在javascript函数中将这个组件的readonly值改成false。首先尝试用document.forms[0].shry.readonly=false这个语句直接将readonly赋为false,以为可以实现,结果没有任何反应。用alert(document.forms[0].shry.readonly)打印这个属性,显示undefined,说明javascript找不到这个属性。

后来通过查找javascript函数才发现有一个方法getElementById(),于是使用document.getElementById("shry").readOnly=false;来给它赋值,问题解决!!

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值