1、简单少重用的前端模板可以配合underscore的模板引擎用script
<script type="text/template" id="template_authorize_user">...</script>
注:解决语法和jsp冲突的问题 可以用转义 <\%=url%>,也可以_.templateSettings = {interpolate : /{{(.+?)}}/g};
2、验证插件,jqueryvalidate支持控件元素自定义属性验证,支持metadata
//中文参考 http://www.w3cschool.cc/jquery/jquery-plugin-validate.html //使用 <input class="form-control" name="taskName" type="text" id="taskName" value="" validate="{required:true,email:true,maxlength:6}"/> //validate.js 扩展 //参考 http://www.cnblogs.com/yanjunwu/p/3764740.html metadataRules: function(element) { var rules = {}, vs = $( element ).attr( "validate" ); if(! vs) return rules; vs=vs.trim(); if(/^{.*}$/.test(vs)){ if (!$.metadata) return {}; var meta = $.data(element.form, 'validator').settings.meta; rules=meta ? $(element).metadata()[meta] : $(element).metadata(); }else{ $.each( vs.split(" "), function() { if ( this in $.validator.classRuleSettings ) { $.extend( rules, $.validator.classRuleSettings[ this ]); } }); } return rules; } //通用 配置 //metadata 设置 $.metadata.setType('attr','validate'); //validate设置 jQuery.extend(jQuery.validator.messages, { required: "不能为空", remote: "请修正该字段", email: "请输入正确格式的电子邮件", url: "请输入合法的网址", date: "请输入合法的日期", dateISO: "请输入合法的日期 (ISO).", number: "请输入合法的数字", digits: "只能输入整数", creditcard: "请输入合法的信用卡号", equalTo: "请再次输入相同的值", accept: "请输入拥有合法后缀名的字符串", maxlength: jQuery.validator.format("请输入一个长度最多是 {0} 的字符串"), minlength: jQuery.validator.format("请输入一个长度最少是 {0} 的字符串"), rangelength: jQuery.validator.format("请输入一个长度介于 {0} 和 {1} 之间的字符串"), range: jQuery.validator.format("请输入一个介于 {0} 和 {1} 之间的值"), max: jQuery.validator.format("请输入一个最大为 {0} 的值"), min: jQuery.validator.format("请输入一个最小为 {0} 的值") }); jQuery.extend(jQuery.validator.defaults, { errorElement : 'span', errorClass : 'help-block', highlight : function(ele) { $(ele).closest('.form-group').addClass('has-error'); }, success : function(ele) { ele.closest('.form-group').removeClass('has-error'); ele.remove(); }, errorPlacement : function(error, ele) { ele.closest('div').append(error); }, ignore: ""//禁止忽略不可见元素 //默认忽略:hidden--参见http://jqueryvalidation.org/validate/#ignore });