使用Ajax将表单数据发送到Struts2 Action类

前端之家收集整理的这篇文章主要介绍了使用Ajax将表单数据发送到Struts2 Action类前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是 Jquery和Struts的新手.
我需要使用Ajax函数将表单数据发送到Struts2动作类.

我的HTML表单元素设置为:

  1. <div class="input-append date" id="from_date">
  2. <input type="text" id="processDate" name="processDate" />
  3. <span class="add-on"><i class="icon-th"></i></span>
  4. </div>
  5. <div>
  6. <input id="submit-date" type="button" class="btn btn-primary" value="Search" />
  7. </div>

我使用JQuery脚本:

  1. $('#submit-date').click(function() {
  2. var processDate = $('#processDate').val();
  3. alert(processDate);
  4. $.ajax({
  5. type : "POST",url : "launchapptest",data : processDate,dataType : "json",success : function(result) {
  6. alert("Success");
  7. }
  8. });
  9. }

Struts.XML文件写成:

  1. <action name="launchapptest" class="com.ge.wd.action.LaunchAppTestAction">
  2. <result type="json">
  3. </result>
  4. </action>

我在Action Class中给出了execute方法

  1. String processDate;
  2.  
  3.  
  4. public String getProcessDate() {
  5. return processDate;
  6. }
  7.  
  8. public void setProcessDate(String processDate) {
  9. this.processDate = processDate;
  10. }
  11.  
  12. public String execute() throws Exception {
  13.  
  14. processDate=getProcessDate();
  15. System.out.println("Process Date : "+processDate);
  16. }

请帮助我,因为如何在动作类中获取此数据.

谢谢您的帮助.但问题已解决,我将代码更改为:

HTML:

  1. <div class="input-append date" id="from_date">
  2. <input type="text" id="processDateForm" name="processDate"/>
  3. <span class="add-on"><i class="icon-th"></i></span>
  4. </div>
  5.  
  6. <div>
  7. <input id="submit-date" type="button" class="btn btn-primary" value="Search" />
  8. </div>

Jquery:

  1. $('#submit-date').click(function() {
  2. var processDate = $('#processDateForm').val();
  3. alert(processDate);
  4. $.ajax({
  5. /* type : "POST",*/
  6. url : "launchapptest",/* contentType: "application/json; charset=utf-8",*/
  7. data : "processDateInput="+processDate,async: true,success : function(result) {
  8. alert("Success");
  9. }
  10. });

和JAVA代码

  1. public class LaunchAppTestAction extends ActionSupport {
  2.  
  3. private static final long serialVersionUID = -367986889632883043L;
  4.  
  5. //private ProcessDate pd = new ProcessDate();
  6.  
  7.  
  8. private String processDateInput=null;
  9.  
  10.  
  11.  
  12.  
  13. public String getProcessDateInput() {
  14. return processDateInput;
  15. }
  16.  
  17. public void setProcessDateInput(String processDateInput) {
  18. this.processDateInput = processDateInput;
  19. }
  20.  
  21. public String execute() throws Exception {
  22.  
  23.  
  24. System.out.println("Process Date : "+processDateInput);
  25.  
  26.  
  27.  
  28. return SUCCESS;
  29. }}

在struts.xml

  1. <action name="launchapptest" class="com.ge.wd.action.LaunchAppTestAction">
  2. <result name= "success" type="json">
  3. </result>
  4. </action>

我希望这适用于任何面临同样问题的人:)再次感谢

猜你在找的Ajax相关文章