js验证框架之RealyEasy验证详解
使用Really_easy_field_validation_with_Prototype进行表单验证,具体内容如下
1、第一步当然是先引入js和css文件。
<linkhref="${ctx}/skin/css/validation.css"rel="stylesheet"type="text/css"/> <scripttype="text/javascript"src="${ctx}/scripts/prototype.js"></script> <scripttype="text/javascript"src="${ctx}/scripts/effects.js"></script> <scripttype="text/javascript"src="${ctx}/scripts/validation.js"></script>
2、然后我在页面的开头添加了如下代码(我把这段代码放在meta.jsp里的,因为每个jsp都在头部包含它。)
functionafterLoaded(){ if(document.all){ varforms=document.forms; if(forms.length>0){ for(vari=0;i<forms.length;i++){ if(forms[i]["method:save"]) newValidation(forms[i]); } } window.clearInterval(inteval); inteval=null; } } varinteval=window.setInterval("afterLoaded();",500);
3、如果要对一个输入框进行验证,只要在他的class里添加一些标志即可。如
<inputtype="text"name="payable.howMuch"value=""id="payable_howMuch"class="requiredvalidate-number"/>
这表示这个字段必填,而且需要是数字。其他的内容,看一下validation.js末尾的代码就明白了。
4、另外我对validation.js做了点修改,因为我们的一个表单有多个submit按钮,并且一般的只有name=method:save的按钮被点击时才需要触发验证,所以修改了验证js。
将原来的
if(this.options.onSubmit)Event.observe(this.form,'submit',this.onSubmit.bind(this),false);
改为了
if(this.options.onSubmit)Event.observe(this.form["method:save"],'click',this.onSubmit.bind(this),false);
这样也存在问题,但对于我们现在的样子,这个更合适些。
5、原来的css对按钮等造成了影响,所以我把那些border的内容都去掉了。
6、这个验证框架好像只考虑了一些情况,若要灵活使用还要花点时间具体了解了才行,还提供了callback机制,下载他的原版后,在html里可以看到演示。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。