问高手们一个问题

05-02-28 fooy5460

我将要做个项目,其中有大量的单据(如订单等),请问用什么框架比较好?我以前使用过STRUTS,但是它处理单据好像不行,请大家给一点建议!

banq
2005-02-28 13:18

STRUTS处理单据不行? 可能是你在如何使用Struts实现处理单据的方法设计上有问题。

fooy5460
2005-03-01 09:06

请问有没有例子,单纯的JSP也行。

banq
2005-03-01 11:00

将单据设计成表单ActionForm,一个单据可能细分成多个ActionForm,关键是你的表单具体数据项目等情况。

fooy5460
2005-03-03 09:38

下面是我的截图,



fooy5460
2005-03-03 10:04

因为我原来是用PB作c/s结构系统的,所以带着些C/S结构的遗留思想。

原来的想法:
操作流程是通过合同号取单据头信息,然后焦点转至商品代码列,输入商品代码,(回车后能带出此行的商品信息),焦点自动跳至配送数量,回车后计算进价总额和售价总额。接着焦点跳至下一行的商品代码栏继续操作。

发现的问题:
当输入商品代码后回车,窗口就自动提交了,而且是按”新建“提交的,后来才知道IE4后当焦点在INPUT时,回车就能将FORM提交。提交时系统好像自动认了最前面的TYPE=”submit“的按钮提交的。然后我尝试将所有TYPE="submit"修改成TYPE="button",但是发现回车再也不提交了,在button的onclick事件中加入document.f03010.submit();也不提交了。(其中f03010是FORM的name)。但是有不少人对我说FORM的提交和TYPE="submit"没什么关系,我不懂。
另一个问题是提交后取单行商品信息非常慢,一个20行的单据会让操作员给骂死(这个是C/S的后遗症)。

修改如下:
FORM中还是采用了多个TYPE="submit"的按钮用以提交,同时添加一个计算的按钮,现在是让操作员一次性输入所有商品代码和配送数量。点击计算,从后台取得所有商品信息并计算总额。这样速度会快好多。

遗留问题:
因为当焦点在INPUT时,回车还是会提交,在输入商品代码或配送数量时难免按到回车键。
其中有些字段是只读的,但是它还是接收焦点,只是不能输入。我该怎么控制焦点从商品代码直接跳转到配送数量(采用TAB键)。我在ACTION中是直接取了界面的信息,所以界面是html:text字段的,bean:write在ACTION中取不到值。

各位高手给我看看问题怎么样可以解决?特别是前期的设计和修改是不是有问题?怎样做比较好?

如果有必要我可以把JSP和ACTION都贴出来。

banq
2005-03-03 21:07

我发现你这些问题和服务器端编程无关,和Jsp/Struts无关,基本是Java脚本的编程问题。

>我说FORM的提交和TYPE="submit"没什么关系
通过Js可以实现表单提交的。只要执行form.buttonName.submit()就可以。

关于焦点定位,也可以通过Js实现,可参考Java脚本相关文档。

fooy5460
2005-03-11 17:26

谢谢各位的帮助,我这几天狂补了一把JS,发现还不是很上手,看来要走的路还是很长阿。

supertrouper
2005-04-17 23:56

Struts是可以批量提交的。