<!----><!---->
<!--
/* Font Definitions */
@font-face
{font-family:宋体;
panose-1:2 1 6 0 3 1 1 1 1 1;
mso-font-alt:SimSun;
mso-font-charset:134;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:3 135135232 16 0 262145 0;}
@font-face
{font-family:"\@宋体";
panose-1:2 1 6 0 3 1 1 1 1 1;
mso-font-charset:134;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:3 135135232 16 0 262145 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0cm;
margin-bottom:.0001pt;
text-align:justify;
text-justify:inter-ideograph;
mso-pagination:none;
font-size:10.5pt;
mso-bidi-font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:宋体;
mso-font-kerning:1.0pt;}
/* Page Definitions */
@page
{mso-page-border-surround-header:no;
mso-page-border-surround-footer:no;}
@page Section1
{size:612.0pt 792.0pt;
margin:72.0pt 90.0pt 72.0pt 90.0pt;
mso-header-margin:36.0pt;
mso-footer-margin:36.0pt;
mso-paper-source:0;}
div.Section1
{page:Section1;}
-->
<!---->
这里主要是两个问题,一个是如何得到
action
的
uri
对应的
classname
,比较难,看了
struts2
源代码,找了好多方法,因为是
annotation
的方式验证,所以都不太成功,不知有没有找这个的代码。最后在
Form.java
里看到,
evaluateExtraParamsServletRequest
方法里,
addParameter("actionClass",
clazz)
,发现其实是可以直接得到
classname
的。在
ValidtaionUtils
里加代码(其实并不好,只是为了减少
VM
中的代码,毕竟
VM
里写逻辑并不太好写)
public
String toJQueryValidRule(Annotation annotation) {
String rule =
""
;
String vname = annotation.annotationType().getSimpleName();
String v = (String)
Validators
.get(vname);
if
(vname.equals(
"RequiredStringValidator"
)) {
// RequiredStringValidator.
没什么特殊的
rule = rule + v +
": true"
;
}
else
if
(vname.equals(
"IntRangeFieldValidator"
)) {
// min
max
rule = rule +
"min
:"
+ ((
IntRangeFieldValidator
) annotation).min() +
","
;
rule = rule +
"max
:"
+ ((
IntRangeFieldValidator
) annotation).max() +
","
;
rule = rule + v +
": true"
;
}
else
if
(vname.equals(
"RequiredFieldValidator"
)) {
rule = rule +
"required
: true"
;
}
return
rule;
}
这里也只是根据思路的例子,只验证了
required
和
intrange
,其它的需要根据
jquery
再写。
而且这么写也不一定是好的方式,只是个思路吧。
其它的话,就是在页面头部加入
jquery
的
js
,用
sitmesh
加也行,这里就直接写了。三个部分:
<script src="/struts2/js/jquery.form.js"
type="text/javascript"></script>
<script src="/struts2/js/jquery.validate.js"
type="text/javascript"></script>
<script src="/struts2/js/messages_cn.js"
type="text/javascript"></script>
这样,就可以中文了,如果不想再改什么的话,就不用写
messages
部分是,当然,它还可以用
class
的方式进行验证,不好加,但我想如何代码写得好的话,还可以减少不少代码。
这样,我们就可以用
jquery
或其它的框架,在浏览器端静态验证了。
当然,所有都只是个思路,还没有考虑以
xml
方式写
validation
的方式,以及前面说的用
css
的
class
名字来进行表示的方式,以及改变
style
以改变显示验证的样式什么的。
分享到:
相关推荐
在客户端静态页面中实现分页是一项常见的需求,尤其在数据量较大、无法一次性展示所有内容时,分页能提供更好的用户体验。"客户端静态页面玩分页.rar"这个压缩包文件可能包含了一些关于如何在JavaScript环境下实现...
MySQL客户端静态编译包,不依赖MySQL库,安装快捷。支持Mac、Windows和Linux平台_ mysqlclient_builds
### ASIC综合后的静态验证方法研究 #### 一、引言 随着深亚微米技术的不断进步和发展,数字电路的设计规模已经达到了前所未有的水平。据预测,在未来二十余年内,单个ASIC(Application Specific Integrated ...
**InstallAnywhere 使用客户端验证的说明文档** InstallAnywhere是一款强大的跨平台安装包制作工具,它允许开发者创建具有专业外观和功能丰富的应用程序安装程序。在某些情况下,为了满足特定的安全需求或业务逻辑...
通过以上步骤,我们可以利用C#静态调用Web Service,实现从客户端应用程序访问IIS上的数据库服务。这种方式简化了调用流程,减少了资源消耗,同时也提供了跨平台通信的能力。然而,实际项目中还需要考虑更多的细节,...
在Ajax验证中,正则表达式可以在客户端即时验证用户输入,防止无效数据提交到服务器,提高用户体验。 至于"Jingtai"这个文件,它可能是静态HTML、CSS或JavaScript代码,用于展示如何实施Ajax验证的实例。分析这个...
**Coisas:GitHub上的静态网站客户端CMS** Coisas是一款基于JavaScript开发的内容管理系统(CMS),特别设计用于托管在GitHub上的静态网站。它允许用户无需深入了解HTML、CSS或JavaScript就能创建、编辑和管理自己...
该项目是一款采用Less语言开发的Gridea静态博客写作客户端设计源码,包含235个文件,涵盖56个TypeScript文件、44个EJS模板文件、41个Less样式文件、26个Vue组件文件、15个PNG图像文件、10个JavaScript文件、9个...
Node中使用gRPC静态代码生成和动态代码生成的方式搭建客户端与服务端;Node中使用gRPC静态代码生成和动态代码生成的方式搭建客户端与服务端;Node中使用gRPC静态代码生成和动态代码生成的方式搭建客户端与服务端;Node...
Java页面静态化主要有两种方式:服务器端静态化和客户端静态化。 1. 服务器端静态化: - **预渲染(Prerendering)**:在用户请求之前,系统自动将一些常用或者热点页面生成静态HTML文件,存储在文件系统或CDN上。...
- `Pop3Statics.cs`:可能包含一些静态常量或方法,比如POP3命令字符串、状态码等。 - `Pop3Credential.cs`:用于存储和管理用户认证信息,如用户名和密码。 - `Pop3StateObject.cs`:在网络I/O操作中,此类可能...
此外,JavaScript还可以用于简单的客户端验证,如检查留言内容是否为空。 5. **HTML(超文本标记语言)**: HTML是网页内容的基础,用来定义页面结构。在静态留言板中,HTML将用于创建表单元素,如`<form>`、`...
OSS广泛适用于多种场景,包括数据备份、媒体资产存储、静态网站托管、移动应用资源存储等。对于Windows用户,阿里云提供了专用的OSS客户端工具,便于用户更方便地进行文件上传、下载以及管理。 "阿里云OSS客户端...
go语言编写的阿里云的DDNS客户端,解决没有静态公网IP的痛点
本教程提供了创建CORBA客户端应用程序的基础知识,包括对关键概念的解释、开发流程的概述以及使用静态和动态调用接口的详细步骤。掌握CORBA技术对于构建复杂的分布式系统是非常有用的,它提供了跨平台、跨语言的互...
本论文通过分析CDC传输中的亚稳态机理,总结了各种同步设计的优劣以及传统验证方法在CDC检查中的弊端,提出并搭建了一套基于SpyGlass的CDC静态验证流程
在Web服务器上,静态文件服务主要是指读取存储在服务器上的文件并将其内容发送到客户端。这种服务对于提高网站性能至关重要,因为它减少了服务器的计算负担,加快了内容的加载速度。 在Java中,处理静态文件的方式...
客户端-服务器端(Client-Server)架构是一种网络通信模型,它是互联网上应用最广泛的设计模式之一。在这种架构中,系统分为两个主要部分:客户端和服务器端。客户端是用户交互的界面,而服务器端则处理客户端请求并...
ASIC综合后的静态验证方法的研究_舒适.caj