0

我在 struts 1.2 框架中有一个要求,我的表单中有 50 到 60 个字段,我只需要更新 3 个字段(由用户更改),所以当我提交表单时,只有这 3 个字段需要更新在数据库中。

如何识别 struts ActionForm 中 50 个字段中的 3 个更改/修改字段。您的建议非常感谢。

4

1 回答 1

0

没有办法做到这一点,因为当您提交表单时,您正在提交所有字段(有时除了复选框)。

您可以使用 javascript 和 ajax 来发布您想要更改的值。在您的字段上设置事件处理程序以检测用户更改了它们并仅发布您更改的字段。这样做的问题是,如果您走那条路线,您只能使用 javascript 提交“表单”。

就我个人而言,我要做的是创建一个 javabean,您可以从您的表单中填充它,该表单仅包含您正在检查的 3 个字段是否已更改。从数据库中获取当前数据(或者如果您不想再次查询,您可以使用会话属性)并使用该数据填充您的 javabean 的另一个实例。比较两个 bean 以查看字段是否相等。根据您要比较的 bean 的相等性处理表单的其余部分。

或者,只要您使用 actionform 来填充开始的字段,请将用户提交的 actionform 与另一个填充了新数据的 actionform 进行比较,以确定您实际需要保留的内容。

于 2013-03-20T01:49:58.810 回答