用$ .post(url,参数)发布后如何将答案页面显示为当前页面?

时间:2012-03-29 13:33:06

标签: jquery jsp struts2 jquery-callback .post

我正在使用以下代码向服务器发送请求

var url='getDNormalForm.action';
var inputStr="test";
    var simTyp="andOr";
var pars={inputStr:inputStr, simTyp=simTyp};
$.post(url,pars);

我在struts.xml中定义了我的操作,如下所示:

        <action name="getDNormalForm" class="ClassNameAction" method="getDNormalForm">
            <result name="andOr">test.jsp</result>
        </action>

当我发帖子时,我可以在萤火虫中看到以下内容:

POST http://localhost:8081/myProject/getDNormalForm.action 200 OK 23ms

我在答案标签中看到了test.jsp页面的内容,这意味着 我发了帖子并成功收到了答案。

我的问题是:如何将页面test.jsp显示为当前页面?

1 个答案:

答案 0 :(得分:0)

$.post(
  url,
  pars, 
  function(response){
    $("body").html(response);
  }, "html");

所以第三个参数是回调函数,即在post请求完成时调用的函数(它是异步的,这意味着它不会阻止在浏览器中执行脚本)。 jQuery调用该函数并将响应作为第一个参数传递给它。注意第4个参数 - “html”,它表示应该是“response”变量的格式(可能是text,json,xml,html)。在函数内部,我们只是用收到的内容替换正文的内容。