客户端验证无法使用 validate() 进行工作

2023-12-08

我正在 validate() 方法中进行验证。

public void validate(){
    if(continent.equals("-1")){
        HttpServletRequest request=ServletActionContext.getRequest();  
        HttpSession session=request.getSession();  
        String s=(String)session.getAttribute("operation");
        if(s.equals("edit"))
                edit();
        else if(s.equals("add"))
                add();
        addFieldError( "Continent", "Continent must be selected");
    }
}

并在jsp(view)中添加表单属性validate=true

<s:form action="add" name="aaa" cssClass="yy" method="post" validate="true">
        <s:textfield name="Code" label="Code" readonly="false" cssClass="defaultTextBox"/>
        <s:textfield name="Name" label="Name" cssClass="defaultTextBox"/>
        <s:select name="Continent" label="Continent" headerKey="-1" headerValue="Select" list="continentlist" cssClass="defaultTextBox"/>
        <s:textfield name="IndepYear" label="Independance Year" cssClass="defaultTextBox" />
        <s:submit value="Save" cssClass="login login-submit" theme="simple"/>
</s:form>

但只有服务器端验证有效。我的问题是 --> 是否无法使用 validate() 方法添加客户端验证?


在 Struts 2 中,客户端验证有不同的含义,完全取决于类型theme您正在使用。

  1. With XHTML(默认)和CSS XHTML,您可以使用

    • 纯 JavaScript 客户端验证

    这完全是客户端,基于 Javascript,并且不与服务器通信。

  2. 随着AJAX相反,您可以运行

    • AJAX 客户端验证

    这将联系服务器,运行整个验证堆栈,并(回答你的问题)运行你的validate()方法也。


我个人更喜欢使用SIMPLE主题,完全由我自己处理 HTML、CSS 和 JavaScript。

由于服务器端验证是强制性的,因此客户端验证被认为只是一种剩余,有利于使页面更加用户友好,并减少高用户环境中的网络流量(您阻止不成功 - 但合法 -在通过网络之前请求:)

考虑使用 HTML5 类型并在 jQuery 上进行回退,特别是如果您的目标是移动设备。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

客户端验证无法使用 validate() 进行工作 的相关文章

随机推荐

  • python 编码中的 mysql

    这篇文章与我的问题相同Python 中的 MySQL UnicodeEncodeError ascii 这只是为了澄清事情 我试图将字符串保存到 MySQL 数据库 但出现错误 文件 smart py 第 51 行 位于 数字 文本 智能
  • Flutter:在某些情况下使用 ScrollablePositionedList 抛出错误

    我正在处理一个索引列表 我发现这个库 ScrollablePositionedList可以完成这项工作 当我在按钮点击中调用函数jumpTo scrollTo时 它可以工作 但是当我在构建中返回之前调用它时 它会抛出错误 E flutter
  • 从 Func 到 Func 的转换有效,但到 Func 失败

    我有以下代码 static Func
  • 无法下载 Spring 框架 jar 文件

    从过去的半个小时开始 我尝试下载 spring 框架库 但仍然无法下载 我正在关注这个本教程 点击这里 正如他们所说 我找不到任何罐子 作者所代表的 看起来 Spring 站点已更新 我很困扰 请帮助我如何下载视频中所示的罐子从春天的网站
  • Camel cxfrs RESTful 客户端 / ProducerTemplate ConnectionTimeout

    我正在尝试为 Camel CXF RS 组件设置 connectionTimeout here 它在第 3 方服务上生成 RESTful 请求 默认30000毫秒太长了 Exchange exchange template send cxf
  • PowerShell 脚本 - 进程的命令行未显示

    我一直在尝试创建一个 PowerShell 脚本 该脚本应列出 svchost exe 进程的所有正在运行的实例及其 PID 命令行 CPU 和 RAM 使用情况 但是 我在显示命令行参数时遇到问题 对于所有列出的进程 该行都是空白的 请问
  • 如何使用pyqt4创建圆形图像?

    我在这里写了这段代码但没有工作 import sys from PyQt4 import QtGui QtCore class CricleImage QtCore QObject def init self super CricleIma
  • 如何为 request.getRequestDispatcher() 指定 .JSP 文件的路径?

    我对 request getContextPath 的含义感到困惑 我的文件布局如下 MyServer WebContent Resources MyImage jpg Resources Scripts MyScript js WEB I
  • 如何从类型脚本读取缓冲区数据?(Solana)

    如何从类型脚本读取缓冲区数据 我想使用公钥来获取我拥有的所有令牌列表 我试图得到这个 但返回的是一个空的对象数组 import Connection Keypair from solana web3 js const Solana new
  • 读取 C 中的分数

    如何将分数读入 C 中以进行数学运算 分数将包含斜杠符号 例如 用户将输入3 12 一个字符串 程序将找到 gcd 计算约简分数并得出 1 4 我最初的计划是使用 strtok 函数本身获取分子和分母 但我遇到了将分子和分母存储到单独变量中
  • Ruby 私有 attr_accessor 和意外的 nil

    当我经常使用 Ruby 时 我有一个坏习惯 将所有内容公开而忽略隐私 不幸的是 这种无知又回来困扰着我 这是我的问题的一个简单版本 class Something private attr accessor sneaky public de
  • SharePoint - 发生意外错误

    在 SharePoint 中 当我转到新的 Web 部件页面时 我收到以下信息 Error 发生意外的错误 Web 部件维护页面 如果您有权限 可以使用此页面暂时关闭 Web 部件或删除个人设置 有关详细信息 请联系您的站点管理员 解决 W
  • 是否有一个 Java XML API 可以解析文档而不解析字符实体?

    我有一个程序需要解析包含字符实体的 XML 程序本身不需要解决它们 并且它们的列表很大并且会发生变化 所以如果可以的话 我想避免对这些实体的显式支持 这是一个简单的例子
  • 在 INSERT 语句中使用 ROWLOCK (SQL Server)

    在复制大量数据并将其插入同一个表的插入语句上使用 ROWLOCK 是否明智 Ex INSERT INTO TABLE with rowlock id name SELECT newid name FROM TABLE with nolock
  • C++ 排序和跟踪索引

    使用 C 并希望使用标准库 我想按升序对样本序列进行排序 但我也想记住新样本的原始索引 例如 我有一组样本 向量或矩阵A 5 2 1 4 3 我想将这些排序为B 1 2 3 4 5 但我还想记住这些值的原始索引 这样我就可以获得另一组 C
  • Windows 版本的 wcswidth_l

    我有一些文本要写入 Windows 控制台 我需要知道列的实际宽度 wcswidth l 似乎是拥有它的平台上的最佳选择 尽管mbswidth l 会更好 因为我不想使用 wchar t 但由于某种原因它不存在 但除了其他平台之外 我还需要
  • Reflection Help - 根据另一个对象设置对象的属性

    我需要一些反思的帮助 我将一个对象传递给另一个对象的构造函数 我需要循环遍历参数的属性并基于它设置新对象属性 大多数 但不是全部 params 属性都存在于新对象中 到目前为止 我已经有了基本的框架 public DisabilityPay
  • Git远程服务器Push失败

    从远程服务器克隆 Git 存储库后 我在本地副本上提交了一些更改 我想将这些更改推送回远程服务器 但收到一条错误消息 该消息没有产生任何有用的信息 fatal read error Invalid argument Ps 服务器和本地rep
  • PDO - 获取 COUNT(*) 的结果?

    在新用户注册过程中 我试图查找用户名或用户电子邮件是否已在数据库中 为此 我想查找标识符 电子邮件或用户名 与数据库中的记录匹配的行数 如果我没有搞砸 唯一可能的返回值是 0 或 1 我的函数如下 但我需要帮助才能完成它 function
  • 客户端验证无法使用 validate() 进行工作

    我正在 validate 方法中进行验证 public void validate if continent equals 1 HttpServletRequest request ServletActionContext getReque