`
jessen163
  • 浏览: 465637 次
  • 性别: Icon_minigender_1
  • 来自: 潘多拉
社区版块
存档分类
最新评论

js获取action的返回值

阅读更多
今天遇到这样一个问题我需要获得一个action执行方法后的一个返回值。

先讲下大概思路,其实很简单,就是用Jquery的$.post来执行ajax


jQuery.post(url,[data],[callback],[type])

url:执行的action的url

[data]:传递过去的参数,假如在表单中,可以使用$("form").serialize()把form中的参数全部提交

[callback]:回调函数,这个用来获取返回值,并把返回值当做参数。例如function(responseText){}

type:可以规定返回的类型,可以返回html,text,xml,json等




我讲一下具体的解决办法,



Action:
public ActionForward doGetEditConsumeCount(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response)
   throws Exception {
  
  String orgIdStr = request.getParameter("orgId");
  int orgId = Integer.parseInt(orgIdStr);

  
  MasOrgInfo organ = organService.getOrganById(orgId);
  
  
  String consumeType = request.getParameter("consumeType");   //消费类型
  String consumeDateStart = request.getParameter("consumeDateStart"); //消费日期起始
  String consumeDateEnd = request.getParameter("consumeDateEnd");  //消费日期截止

  String prStart = request.getParameter("priceStart");    //实际价格原始价格
  Float priceStart = null;
  if (!prStart.equals("")) {
   priceStart = Float.parseFloat(prStart);
  }

  String prEnd = request.getParameter("priceEnd");     //实际价格新价格
  Float priceEnd = null;
  if (!prEnd.equals("")) {
   priceEnd = Float.parseFloat(prEnd);
  }
  String type = request.getParameter("type");       //专业类型
  String packageName = request.getParameter("packageName");   //专业或包
  String combo = request.getParameter("combo");      //套餐 

  
  Integer comsumeNum=organService.getUpdateConsumeNum(orgId, type, packageName, combo, consumeType, consumeDateStart, consumeDateEnd, priceStart);
  Long peopleNum=organService.getUpdateConsumePeopleNum(orgId, type, packageName, combo, consumeType, consumeDateStart, consumeDateEnd, priceStart);
  
  String strNum="\n 即将修改"+comsumeNum+"条记录,共计"+peopleNum+"个账号";
  response.setContentType("text/xml;charset=utf-8"); //更改字符编码
  response.getWriter().println(strNum);            //这句话是把结果返回(这个是关键)

  return mapping.findForward("");                //这里返回空就好
 }

 

jsp页面的js代码如下:

function update() {
 if($('#type').val()!=null&&$('#type').val){
  $.post("${basepath}/organ.do?o=doGetEditConsumeCount&orgId=${organ.id}&pageNum=1", $("form").serialize(),
//这里的resonseText就是action中的strNum了,这个名字可以随便起的


   function(responseText){        

    var msg = responseText+"\n您真的确定要批量修改吗?\n\n请确认!";
    if (confirm(msg)==true){
     theform.action = "${basepath}/organ.do?o=doEditLotConsumes&orgId=${organ.id}";
     theform.submit();
     return true;
    }else{
     return false;
    }
             }
  , "text");
 }else{
  alert("提示:请将原始价格填入“实际单价起始价格框”,新价格填入“实际单价截止价格框”");
 }
}

 


上面的代码我其实是在回调函数里面又写了一些东西,其实可以简化为这个样子

$.post("${basepath}/organ.do?o=doGetEditConsumeCount&orgId=${organ.id}&pageNum=1", $("form").serialize(),function(responseText){alert(responseText)},"text");
分享到:
评论

相关推荐

    js弹出窗口返回值

    ### JS弹出窗口返回值详解 #### 一、前言 在前端开发中,经常会遇到需要弹出新窗口并从该窗口返回数据的情况。本文将详细介绍`window.opener`对象的使用方法及其应用场景,帮助开发者更好地理解如何实现弹窗与主...

    浅谈js获取ModelAndView值的问题

    JS当中不能接收ModelAndView的返回值吗?一定要在JSP页面中才能接收吗? 1 方法一 【有效】 可以的,跟el表达式访问方式一样。 示例代码,一个数据展示请求的Action中存入一个userId: @RequestMapping(value="/...

    JavaScript in action.zip

    "JavaScript in Action.zip"这个压缩包很可能包含了全面讲解JavaScript技术的资源,旨在帮助学习者从入门到精通掌握这种语言。 JavaScript的核心概念包括变量、数据类型、控制结构(如条件语句和循环)、函数、对象...

    ymPrompt的doHandler方法来实现获取子窗口返回值的方法

    在上述场景中,开发者遇到了如何从ymPrompt 弹出的子窗口获取返回值并根据该值决定是否刷新父窗口的问题。通过深入研究ymPrompt的API,找到了`doHandler`方法来解决这个问题。 `doHandler`方法是ymPrompt组件提供的...

    struts2 action 返回json方法(一)源码

    客户端(通常是JavaScript)可以通过AJAX请求获取JSON数据,并解析成JavaScript对象。例如,使用jQuery的$.getJSON方法: ```javascript $.getJSON("/myAction", function(data) { alert("Message: " + data....

    js弹出窗口返回值的简单实例

    本文将详细讲解如何利用 JavaScript 实现弹出窗口并获取其返回值,以及 `window.opener` 的用法。 首先,我们来看一个简单的实例。假设我们有两个HTML页面,`a.html` 和 `b.html`。在 `a.html` 中有一个链接,当...

    11-vuex-action-mutation-区别.md

    一个action可以有返回值,通常这个返回值是一个Promise,可以在组件中通过.then()来获取action的最终结果。 Vuex还提供了getter的概念,它可以被认为是一个store中的计算属性,当依赖的状态发生了变化时,getter的...

    给Form动态赋值并动态转向

    2. **JavaScript动态修改Action属性**:通过JavaScript可以动态修改表单的`action`属性,从而改变表单提交的目标。这里的`FormSubmit`函数实现了这一功能。 ```javascript function FormSubmit() { document....

    Javascript验证登陆表单.pdf

    onSubmit事件是指当用户单击了表单中的“提交”按钮时,调用该事件并得到一个返回确认值,返回值为“true”提交数据,返回值为“false”拒绝提交数据。 在本文档的结尾,我们提供了一个表单登陆验证代码片段,用于...

    动态设置form表单的action属性的值的简单方法

    纯JavaScript实现动态设置`action`属性,可以通过`document.getElementById`获取表单元素,然后直接访问或修改其`action`属性。以下是一些示例: ```javascript function test1() { // 获取表单元素 var form = ...

    Javascript期末考试及答案[文].pdf

    * JavaScript 的函数是第一类对象,可以作为参数传递,也可以作为返回值。 * 函数可以使用 function 关键字声明,函数名可以包含字母、数字和下划线。 * 函数可以使用参数,参数可以是数字、字符串、数组、对象等...

    C#代码与javaScript函数的相互调用

    根据给定的信息,本文将详细探讨C#与JavaScript之间的相互调用方法,主要涉及四个方面的内容:如何在JavaScript中访问C#函数、如何在JavaScript中访问C#变量、如何在C#中访问JavaScript已有的变量以及如何在C#中访问...

    一个简单的 struts2-json 实例

    这里的`<constant>`标签开启了JSON支持,`<package>`中的`<action>`定义了一个以"Json"结尾的Action,它的结果类型设置为"json",意味着这个Action的返回值将被转化为JSON。 接下来,我们需要在Action类中实现返回...

    js一些相关总结

    <form action="url" method="post" onSubmit=""> <!-- 表单元素 --> ``` - **数组对象**:创建和操作数组的方法: - **声明数组**: ```javascript var arr = new Array(); ``` - **遍历数组**: ```...

    Struts2_JSON_Demo

    - **Action的返回值**:Action的返回值可以是简单的字符串,也可以是一个包含数据的对象。Struts2的JSON插件会自动处理这些对象并将其转换为JSON。 - **使用ModelDriven接口**:如果Action实现了`ModelDriven`接口...

    waf开发案例.pdf

    五、获取Action数据到页面展示 当Action方法返回值不是void或forward时,可通过AJAX调用来获取数据。在页面上,`callAjax`函数的参数包括URL、异步/同步标志、Action的包名和是否显示返回值作为提示信息。 六、树型...

    extjs动态树struts请求数据

    在struts.xml配置文件中启用JSON插件,并在Action配置中指定`<result type="json">`,这样Struts2会自动将Action的返回值转换为JSON格式。 5. **Ajax请求**: ExtJS使用Ajax请求与服务器进行异步通信。TreePanel通常...

    ajax无刷新分页(java)

    结果类型设置为`json`,意味着Struts将自动把Action方法的返回值转换成JSON格式并返回给前端。 前端JavaScript代码可以使用jQuery或其他库来发送Ajax请求。例如,使用jQuery的`$.ajax`或`$.getJSON`方法: ```...

    JavaScript阻止表单提交方法(附代码)

    在JavaScript中,通常我们会使用`document.forms["formName"].elements["elementName"].value`来获取表单元素的值,然后进行校验。例如,验证用户名是否为“admin”: ```javascript function check() { if ...

    struts2+json+ajax整合例子(导入即可运行,附带详细教程)

    1. **配置Struts2**:首先,需要在Struts2的配置文件`struts.xml`中定义Action,设置返回类型为"json",这样Struts2就会自动将Action的返回值转化为JSON格式。 ```xml <action name="ajaxAction" class=...

Global site tag (gtag.js) - Google Analytics