社区
Java EE
帖子详情
100分!关于弹出窗口数据提交问题!(Struts 1.x)
ldg8878
2008-08-01 05:27:31
主页面 A ,通过其中的一个按钮打开一个弹出页面(窗口)B
需求:
在 B 中填写并提交数据后在 B 页面上显示提交成功信息,并保持 B 原状(即不关闭也不转向)
请问应该如何实现,谢谢
...全文
107
12
打赏
收藏
100分!关于弹出窗口数据提交问题!(Struts 1.x)
主页面 A ,通过其中的一个按钮打开一个弹出页面(窗口)B 需求: 在 B 中填写并提交数据后在 B 页面上显示提交成功信息,并保持 B 原状(即不关闭也不转向) 请问应该如何实现,谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
pinkly
2008-12-23
打赏
举报
回复
我也遇到同样的问题
mellow_msb
2008-08-19
打赏
举报
回复
A打开B这个应该很简单吧,这个就不用説了,b页面提交还显示b页面,就用ajax技术了。
zq620901
2008-08-18
打赏
举报
回复
[Quote=引用楼主 ldg8878 的帖子:]
主页面 A ,通过其中的一个按钮打开一个弹出页面(窗口)B
需求:
在 B 中填写并提交数据后在 B 页面上显示提交成功信息,并保持 B 原状(即不关闭也不转向)
请问应该如何实现,谢谢
[/Quote]
这个我是刚学的现买现卖你看对不对
你写一个A的页面,B的页面,在控制器那最后返回的是B的页面
注意一下struts-config.xml的<action>标签的属性觉得好像不是很难 呵呵真加我写我还真觉得自己写不出来
yeruping
2008-08-03
打赏
举报
回复
同意楼上 ajax 功能强大
freedom2001
2008-08-02
打赏
举报
回复
用ajax,把请求提交到后台,前台页面不变
zidasine
2008-08-02
打赏
举报
回复
b 页面做2项工作 表单提交和显示信息
需要在页面上做个判断
如果 在request 范围内不包括显示信息 则显示表单,否则显示信息用 <logic:present <logic:empty ...来做判断
表单提交后 转发到b <action ...><farword path="/B.jsp"....
xian_hf
2008-08-02
打赏
举报
回复
提交后在转向到B页面就好了,如果要提示信息,就在request范围放一条信息
forward到B,显示信息,但这样会有重复提交的问题,那就把信息放在session
中,重定向到B。这样在session中放条信息也不是不好,总觉得太乱,就加一个页面
提示信息,给一个连接连到B,或者加一个倒计时跳转到B。
zhj92lxs
2008-08-01
打赏
举报
回复
[Quote=引用 2 楼 longtramp 的回复:]
提交后跳转回b界面,然后显示信息,有什么特殊的需求?
[/Quote]
说说特殊要求啊,两个没什么影响的
老紫竹
2008-08-01
打赏
举报
回复
2个页面,各干各的,没有什么关系啊?
你遇到什么问题呢?
longtramp
2008-08-01
打赏
举报
回复
提交后跳转回b界面,然后显示信息,有什么特殊的需求?
MyEclipse开发
Struts
2
MyEclipse开发
Struts
2
javaee三大框架整合宅急送项目lib包
二、完善其余功能节点 -- 流程 1、 将 提供其余节点页面 复制 pages/zhongzhuan 入库(点击左侧菜单入库) ----- Action (查询入库任务列表)---- instore_list.jsp ---- 办理任务 ---- instore_complete.jsp(
提交
form) --- Action (办理任务流转到下一个节点) 修改function
数据
表 入库 task_findInStoreTask.action 出库 task_findOutStoreTask.action 签收 task_findReceiveInfoTask.action 2、 查询任务列表 TaskAction // 业务方法 ----- 查询入库环节 的个人任务 public String findInStoreTask(){ // 登陆用户 User user = (User) getSession().getAttribute("user"); List
zhongZhuanInfoList = myTaskService.findTransferTask(user,"入库"); // 值栈 ActionContext.getContext().put("zhongZhuanInfoList", zhongZhuanInfoList); return "findInStoreTaskSUCCESS"; } // 业务方法 ----- 查询出库环节 的个人任务 public String findOutStoreTask(){ // 登陆用户 User user = (User) getSession().getAttribute("user"); List
zhongZhuanInfoList = myTaskService.findTransferTask(user,"出库"); // 值栈 ActionContext.getContext().put("zhongZhuanInfoList", zhongZhuanInfoList); return "findOutStoreTaskSUCCESS"; } // 业务方法 ----- 查询签收环节 的个人任务 public String findReceiveInfoTask(){ // 登陆用户 User user = (User) getSession().getAttribute("user"); List
zhongZhuanInfoList = myTaskService.findTransferTask(user,"配送签收"); // 值栈 ActionContext.getContext().put("zhongZhuanInfoList", zhongZhuanInfoList); return "findReceiveInfoTaskSUCCESS"; } 3、 配置
struts
.xml结果页面
/WEB-INF/pages/zhongzhuan/instore_list.jsp
/WEB-INF/pages/zhongzhuan/outstore_list.jsp
/WEB-INF/pages/zhongzhuan/receiveinfo_list.jsp
4、 Action办理对应节点任务 // 业务方法 ---- 办理入库任务 public String instorecomplete(){ InStore inStore = new InStore(); inStore.setInfo(info); inStore.setUpdateTime(new Date()); // 调用业务层 myTaskService.completeInStore(taskId, inStore); return "instorecompleteSUCCESS"; } // 业务方法 ---- 办理出库任务 public String outstorecomplete(){ OutStore outStore = new OutStore(); outStore.setInfo(info); outStore.setUpdateTime(new Date()); // 调用业务层 myTaskService.completeOutStore(taskId, outStore); return "outstorecompleteSUCCESS"; } // 业务方法 ---- 办理签收任务 public String receiveinfocomplete(){ ReceiveGoodsInfo receiveGoodsInfo = new ReceiveGoodsInfo(); receiveGoodsInfo.setInfo(info); receiveGoodsInfo.setUpdateTime(new Date()); // 调用业务层 myTaskService.completeReceiveGoodsInfo(taskId, receiveGoodsInfo); return "receiveinfocompleteSUCCESS"; } 5、
struts
.xml 跳转回任务列表
task_findInStoreTask
task_findOutStoreTask
task_findReceiveInfoTask
在JBPM在流程结束时,发生异常 org.springframework.dao.DataIntegrityViolationException: could not delete: [org.jbpm.pvm.internal.model.ExecutionImpl#50001]; SQL [delete from JBPM4_EXECUTION where DBID_=? and DBVERSION_=?]; constraint [null]; nested exception is org.hibernate.exception.ConstraintViolationException: could not delete: [org.jbpm.pvm.internal.model.ExecutionImpl#50001] 解决: hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect ======================================================================================================================== 三、 流程实例 查看管理 1、 查询实例功能 查询系统正在运行实例 ExecutionService.createProcessInstanceQuery() 查询系统已经完成的实例 HistoryService.createHistoryProcessInstanceQuery() json/admin/json { id:
100
5, pId:
100
, name:"查看正在运行的任务", t:"",page:"page_workflow_processinstance.action"} 改为 { id:
100
5, pId:
100
, name:"查看正在运行的任务", t:"",page:"processinstance_list.action"} 2、 每个运行流程实例,关联流程变量 ZhongZhuanInfo 包含所有流程信息 根据流程实例id 查询ZhongZhuanInfo
数据
(ZhongZhuanInfo) processEngine.getExecutionService().getVariable(pid, "zhongZhuanInfo"); 服务器返回 中转信息 result = zhongZhuanInfo.toString();
result
在页面抓取中转信息,回显 $.post("${pageContext.request.cotnextPath}/processinstance_showInfo.action", {"pid": pid}, function(data){ $.messager.alert("流程实例信息", data, "info"); }); 3、 实例运行的流程图查看 需要在流程图上面 标记每个 流程运行到哪个任务节点 第一步: 为每条实例记录,添加查看流程图函数
');">查看流程图
function showPng(pid){ alert("查看" + pid + "对应流程图"); } 第二步: 流程图查看Action 可以复用 ---- processdefinition_showpng.action?deploymentId= & resourceName= RepositoryService.getResourceAsStream(java.lang.String deploymentId, java.lang.String resourceName) * resourceName 可以通过 deploymentId 动态获得 RepositoryService repositoryService = processEngine.getRepositoryService(); ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().deploymentId(deploymentId).uniqueResult(); resourceName = processDefinition.getImageResourceName(); 第三步: 点击查看流程图, 获得活动节点坐标 通过 window.showModalDialog() 查看流程图页面 (
弹出
窗口
,显示页面 url地址不能修改 ) function showPng(pid){ //alert("查看" + pid + "对应流程图"); window.showModalDialog("${pageContext.request.contextPath}/processinstance_findactivityinfo.action?pid="+pid); } 查看某一个具体活动节点坐标 String processDefinitionId = "test-1"; // 流程定义的id String activityName = "start1"; // 活动的名称 ActivityCoordinates c = processEngine.getRepositoryService() .getActivityCoordinates(processDefinitionId, activityName); 查看当前流程实例活动所有节点名称 ProcessInstance的 java.util.Set
findActiveActivityNames() @Override public List
findActivityCoordinates(String pid) { // 1、 根据流程实例id 获得所有活动节点名称 ProcessInstance processInstance = processEngine.getExecutionService().createProcessInstanceQuery().processInstanceId(pid).uniqueResult(); Set
activityNames = processInstance.findActiveActivityNames(); // 2、一个活动节点 --- 对应一个坐标对象 List
activityCoordinates = new ArrayList
(); for(String activityName: activityNames){ // 获得每一个活动节点名称 String processDefinitionId = processInstance.getProcessDefinitionId();//流程定义id ActivityCoordinates activityCoordinate = processEngine.getRepositoryService().getActivityCoordinates(processDefinitionId, activityName); activityCoordinates.add(activityCoordinate); } return activityCoordinates; } ============ 为了在下一个页面 可以显示流程图, 根据实例id 查询 发布id @Override public String findDeploymentIdByProcessInstanceId(String pid) { ProcessInstance processInstance = processEngine.getExecutionService().createProcessInstanceQuery().processInstanceId(pid).uniqueResult(); ProcessDefinition processDefinition = processEngine.getRepositoryService().createProcessDefinitionQuery().processDefinitionId(processInstance.getProcessDefinitionId()).uniqueResult(); return processDefinition.getDeploymentId(); }
" style="position: absolute;top: 0;left: 0"/>
px; height:
px; left:
px; top:
px; position: absolute; border-color: red; border-style: solid; border-width: 1px;">
解决刷新时
弹出
是否重新
提交
数据
在
struts
config 配置文件 <forward path="/xx.jsp" name="info" color="#ff0000"></forward>redirect="true"> 把地址重定向 既在IE地址中不会出现xx.do
弹出
窗口
刷新它的父页面后。出现不重新发送信息,则无法刷新网页 因为做程序中遇到这个
问题
,所以搜索到了火靶
创建HTML子页面
弹出
效果的实战指南
本文还有配套的精品资源,点击获取 简介:本文介绍了在HTML页面中实现
弹出
子页面效果的方法,包括使用JavaScript和相关库,以及在
Struts
1框架中的实现步骤。详细讨论了基础概念、实现方式、示例代码,以及在现代Web开发框架中的相似实现。同时,提供了注意事项、优化建议和最佳实践。 1. HTML页面
弹出
子页面基本原理 在构建现代Web应用时,能够有效...
Struts
Validator 开发指南
使
Struts
支持Validator 要在
Struts
项目中使用Validator功能,首先需要配置
Struts
项目,使其支持Validator框架.
Struts
通过一个插件(Plugin)来使
Struts
项目支持Validator.这个Plugin由
Struts
默认提供,用户也可以自己开发自己的Validator Plugin.
Struts
默认提供的Plugin为:org.apache.stru
Java EE
67,538
社区成员
225,852
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章