【问题标题】:How to show server responses using javascript? [duplicate]如何使用 javascript 显示服务器响应? [复制]
【发布时间】:2016-03-13 23:19:54
【问题描述】:

我需要使用 ajax 提交表单并显示相关消息(已提交/出现问题)。我有一个带有要提交到服务器的表单的页面,我正在使用 javascript/ajax 向服务器发送请求。如何接收服务器的响应并显示在页面上?

目前我已经写了“xmlhttp.responseText”,但是如果我需要显示服务器的响应呢?

我也使用以下内容来显示消息,但它仅在我使用表单而不是 javascript 发送请求时才有效。

还有其他显示变量值的方法吗?服务器响应ajax请求后?

财产

      <s:property value="message"/> 

javascript函数

function AddToWatchList(value){
    if(window.XMLHttpRequest)
    {
        xmlhttp = new XMLHttpRequest();
    }
    else
    {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange=function()
    {
        if(xmlhttp.readyState == 4 && xmlhttp.status == 200)
        {
            document.getElementById("message").innerHTML = xmlhttp.responseText;
        } 
    }
    xmlhttp.open("get","add?myvalue="+value,false);
    xmlhttp.send();
}

服务器代码

 ...
 private String message;
  public String add(){
    ....
    this.message = "added";
    return "success";
}
 getter and setter of message
 .....

xmlhttp.responseText 不是正确答案,因为我想显示特定变量的值,比如说服务器上的消息变量。

Mir Moordio,提供了一个很好的解决方案,但有没有更好的方法来做到这一点?

【问题讨论】:

  • xmlhttp.responseText
  • 反对票是什么?
  • 所以你是说数据不在xmlhttp.responseText
  • @squint 不,不是。它位于一个名为 message 的特定变量中。当服务器收到信息时,尝试将它们添加到数据库中,然后相应地设置消息变量的值。

标签: javascript ajax struts2


【解决方案1】:

您需要将服务器响应发送到单独的页面并使用 jquery.html 或 xmlhttp.responseText 显示该页面。

private String message;
  public String add(){
    ....
    this.message = "added";
    return "message";   
}

struts.xml

<result name="message">message.jsp</result>

message.jsp

   required library goes here
   <s:property value="message"/> 

你的其余代码应该没问题。

【讨论】:

  • 很好用,谢谢,但有没有更好的方法?
  • 抱歉我不知道还有什么方法
猜你喜欢
  • 2015-08-01
  • 2012-09-10
  • 1970-01-01
  • 2016-10-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-17
  • 1970-01-01
相关资源
最近更新 更多