在使用strut1 进行form的自动验证,但是在ajax里面就不行。
var result;
var options = {
success:function(data){//回调函数
result = data;
},
error: function(XmlHttpRequest, textStatus, errorThrown){
alert( "Server busy. Please try again later.");
},
resetForm:false,
async:false,
url:"<%=ctxPath%>/booking/NewAdd.do?action=validate"
};
$("#createForm").ajaxSubmit(options);
if("timepast" == result.resultJson){
alert("Sorry, there is less than 4 hours before the conference start time."
+ "\n\r"
+"Please contact directly HGC Concierge to process your urgent request.");
return false;
}
if("overlap" == result.resultJson){
alert("Sorry, the resoures[" + result.bookingList + "] you selected have already been occupied.");
return false;
}
if("error" == result.resultJson){
alert("Server busy. Please try again later.If problem persists, please contact HGC ITFN.");
return false;
}
代码首先要插入引入的jquery插件
<script type="text/javascript" src="<%=ctxPath%>/common/jquery.form.js"></script>
表单的ID的对应在这句code里面
$("#createForm").ajaxSubmit(options);
其中Action的代码:
NewBookingForm newBookingForm = (NewBookingForm) form;
直接可以拿到form表单的值并且封装为对象。
在这里一开始用了异步的方式调用,发现得不到准确的result的值,后面改成同步就OK了。
因为异步处理可能结果还没有返回,程序就继续运行被使用,所以有错误。
另外:java String 类型拼接字符串类型的示例
String jsonData = "{\"resultJson\":\""+resultJson+"\","+"\"bookingList\":\""+bookingListResult+"\"}";
其中\"表示转义,就表示为引号。
相关推荐
Struts2是一个强大的MVC框架,用于构建企业级的Web应用程序,而jQuery则是一个高效的JavaScript库,简化了DOM操作、事件处理以及Ajax交互。在本项目中,我们关注的是将这两者结合使用,实现基于jQuery的...
4. **AjaxForm的实现**:在Struts2框架中,我们可以使用AjaxForm来实现异步提交表单。首先,需要在JSP页面上使用jQuery选择器和事件监听来捕获表单的提交事件。然后,利用jQuery的`$.ajax()`或`$.post()`方法发起...
为了解决这个问题,jQuery Form插件应运而生,它允许我们实现异步(Ajax)表单提交,提高页面的响应性和用户体验。 ### jQuery Form 插件介绍 jQuery Form插件是基于jQuery的一个强大工具,它可以轻松地将任何HTML...
在这个"struts2+ajax+jquery"的主题中,我们将深入探讨如何利用Struts2、jQuery和Ajax技术实现Web页面的异步交互。 首先,Struts2作为MVC框架,它的核心是Action,它负责处理用户的请求,并通过配置的Result返回...
3. **jQuery代码**:编写jQuery代码来监听表单的提交事件,并使用form插件的异步提交方法。 ```javascript $('#uploadForm').submit(function(event) { event.preventDefault(); // 阻止默认的表单提交行为 $...
6. **JSP页面**:展示商品列表和详细信息,使用Struts2的标签库(如`s:form`、`s:textfield`等)构建表单,同时结合jQuery处理DOM元素,如显示/隐藏加载提示、更新商品列表。 7. **结果类型和拦截器**:Struts2的...
在本场景中,我们将探讨如何在Struts2中实现AJAX上传图片并同时提交表单数据。 **一、Struts2文件上传** 在Struts2中,文件上传主要依赖于`org.apache.struts2.interceptor.FileUploadInterceptor`拦截器。首先,...
通过以上步骤,我们可以利用jQuery.form.js与Struts 1.x实现页面多个表单的AJAX提交,同时保持页面的其他部分不变,从而提升Web应用的交互性和用户体验。在实际项目中,可能还需要根据具体需求进行更复杂的定制和...
jQuery.form插件是jQuery的一个扩展,它使得表单的异步提交变得简单,支持文件上传。通过使用这个插件,我们可以实现无刷新的图片上传,提高用户体验。 3. **异步上传图片**: 异步上传图片的关键在于使用HTML5的...
通过运行这个Demo,你可以看到jQuery与Struts2整合的实际效果,如Ajax提交表单、动态更新页面等。 总之,jQuery与Struts2的整合使得前端交互更为便捷,同时保持了Struts2的MVC架构和强大的后端控制能力。在实际开发...
使用jQuery,你可以监听表单的提交事件,通过Ajax调用`upload.action`,并将文件数据作为FormData对象发送。这样,用户可以立即看到上传进度,而无需刷新整个页面。 在jQuery中,代码可能类似这样: ```javascript...
jQuery的`.ajaxForm`和`.submitForm`方法是专门用来处理表单提交的,它们使得代码更加简洁。然而,这两个方法要求表单内必须有一个提交按钮,这在追求美观的界面设计中可能不适用。 #### 使用`ajaxForm`方式 ```...
- **Struts2标签与jQuery**:虽然jQuery主要处理DOM操作,但也可以配合Struts2标签一起工作,例如动态生成表单元素并触发jQuery事件。 5. **实例实践**: - **Accordion**:创建一组可折叠的标题和内容区域,展示...
其中包含`org.apache.struts2.dispatcher.multipart.JakartaMultiPartRequest`或`org.apache.struts2.dispatcher.multipart.CommonsMultiPartRequest`类,用于处理multipart/form-data类型的表单提交,这是上传文件...
1. 采用jquery.validate.js实现了提交验证form表单。 2. 采用jquery.form.js实现ajaxForm提交表单或上传文件到服务器。 3. 在struts2的Action通过2种不同的实现方法返回json格式的字符串。 4. 针对商品实现简单无...
使用jQuery选择器找到表单并为其添加`ajaxForm`事件监听器。在这个事件中,我们需要指定请求的URL(通常是Struts2的Action),请求方法(POST),数据类型(通常为文本或JSON),以及是否异步执行。在`success`回调...
jQuery提供了方便的API来处理表单提交,例如使用`.ajax()`方法进行异步上传。在HTML表单中,需要设置`enctype="multipart/form-data"`以支持文件上传: ```html <form id="uploadForm" action="uploadAction.action...
在本文中,我们将探讨如何使用Struts1框架与jQuery Form插件实现文件的异步上传。Struts1是一个历史悠久的MVC(Model-View-Controller)框架,虽然它已不再是最新的技术,但在许多遗留系统中仍然被广泛使用。jQuery ...
在处理表单提交时,可以使用jQuery监听表单的提交事件,添加验证逻辑,或者通过Ajax无刷新提交数据,然后控制对话框的显示。 4. **Ajax提交**:Ajax(Asynchronous JavaScript and XML)允许在不刷新整个页面的情况...
- 使用AjaxForm插件或jQuery Form Plugin来简化表单的异步提交。 - 为了提高用户体验,可以添加加载指示器,让用户知道页面正在更新。 总结来说,Struts2和jQuery的结合使用,使得开发者能轻松实现Web应用的局部...