当前位置: 首页 > 面试题库 >

如何将Ajax响应列表用作struts2迭代器值?

蓝昊然
2023-03-14
问题内容

我正在使用以下ajax函数:

 $.ajax({
       url: "userhomeonload",
       contentType: 'application/json',
       type: 'POST',
      datatype:'json', 
       async: true,
       success: function (res) {
                 alert(res[i].name+" "+res[i].rollNo);
    }  });

我在警告框中得到正确的结果。现在,我想在struts迭代器中使用此ajax返回的列表,如下所示:

<s:iterator value="list">
   <div>
     <s:property value='name'></s:property>
     <s:property value="rollNo"></s:property>
   </div>
</s:iterator>

但是屏幕上没有任何显示。谁能告诉我该怎么做?


问题答案:

@AndreaLigios请解释第二种结果类型,即JSP代码段。我不知道如何使用JSP代码段作为ajax响应。

Main.jsp(完整)

<%@ taglib prefix="s" uri="struts-tags.tld" %>
<html>
    <head>
        <script>
            $(function(){   
                $('#loader').on("keypress click", function(e) {
                    $.ajax({
                        url: "<s:url action='ajaxAction'/>",
                    }).done(function(result) {
                        $("#target").html(result);
                    });
                });
            });
        </script>   
    </head>
    <body>
        <input type="button" id="loader" />
        <div id="target"></div>
    <body>
</html>

Struts.xml(相关)

<action name="ajaxAction" class="foo.bar.AjaxAction">
    <result>Snippet.jsp</result>
</action>

AjaxAction(相关)

private String testString;
/* Getter and Setter */

public String execute(){
   testString = "I'm loaded with AJAX";
   return SUCCESS;
}

Snippet.jsp(完整)

<%@ taglib prefix="s" uri="struts-tags.tld" %>

<!-- This is the result page. You can use Struts tags here, 
the generated HTML will be appended to the target div. -->

TestString: <s:property value="testString" />

输出:

<body>
    <input type="button" id="loader" />
    <div id="target">TestString: I'm loaded with AJAX</div>
<body>


 类似资料:
  • 我有以下LinkedHashMap声明。 我的观点是我如何迭代这个哈希图。我想在下面执行此操作,对于每个键获取相应的数组列表,并根据该键逐个打印数组列表的值。 我试过了,但只得到返回字符串,

  • 问题内容: 我有一个清单: 要从此列表中获取,有两种方法: 1。 2。 我的问题是,哪一个内存效率高且迭代速度快? 问题答案: 他们做同样的事情- 增强的循环对于长版本来说只是语法糖(对于可迭代对象;对于数组,它稍有不同)。除非您明确需要迭代器(例如,调用),否则我将使用第一个版本。 有关编译器执行的准确转换的更多详细信息,请参见Java语言规范的14.14.2节。

  • 问题内容: 我有一个简单的生成器,可以给我一组坐标的排列。我希望使用以下代码将每个新排列保存到数组中的元素: 但是,当打印结果时,打印给了我我想要的东西: 而打印则提供一个数组,其中每个元素都是最后一个排列的副本。 有什么更好的方法可以做到这一点? 问题答案: 您的生成器不会产生 新 列表,而是会一遍又一遍地产生 相同的列表 。当您将产生的引用附加到您身上时,只会一遍又一遍地看到相同的原始列表(以

  • 问题内容: 我正在尝试通过jQuery向Struts2操作类发送AJAX发布请求,以处理表单并接收JSON响应,但是我还没有弄清楚该怎么做。 首先,我制作了表单,并设置了Struts使其可以在没有JavaScript的情况下工作(尝试进行渐进式增强),现在我试图通过jQuery使它工作。我可以轻松地创建一个新的servlet,该servlet调用动作类的validate和execute方法并在其中

  • 使用JSF 2.0,我需要显示一个表,其中每一行都包含一个打开弹出窗口的链接。我有两种型号: