在 Struts 2 中从 JSP 调用 Java 方法

问题描述 投票:0回答:3

我想调用一个 Java 方法,该方法返回数组列表,并且我想将该数组列表添加到 JSP 中的下拉列表中。当用户从下拉列表中选择一个值时,该值将存储在变量类型中

<form action="Config.action" method="post">
<table width="600" height="34" align="center" border="1" bgcolor="#CCCCCC"><br>
<%     
    Config c = new Config();
    ArrayList<String> names = c.populate();
    out.print("<table>  <tr><select>");

    for (String s : names) 
    {
        out.print("<option value="+s+">"+s+"</option>");
    }    
%>    
</select></table>
jsp struts2
3个回答
3
投票

使用操作属性来获取/设置名称

private String name;
//getter and setter

public ArrayList<String> getNames(){
  Config c = new Config();
  return c.populate();
}

JSP:

<form action="Config.action" method="post">
<table width="600" height="34" align="center" border="1" bgcolor="#CCCCCC"><br>
<s:select name="name" list="names"/>
</table>
</form>

1
投票

Index.jsp页面,在Body标签后添加这一行,

<s:bean name="controller.FindList" var="my"> </s:bean>

  <s:select 
    list="name" 
    name="name_list" />

FindList.class

   private List<String> name=new ArrayList<String>();// Setter method

   public ArrayList<String> getNames(){
           Config c = new Config();
            name=c.populate();
           return name;
   } 

无需在 struts.xml 中操作控制器代码


0
投票

在这种情况下,你必须调用ajax函数,可以使用DWR结合Jquery来实现。 请参阅以下链接

DWR+STRUTS 2

© www.soinside.com 2019 - 2024. All rights reserved.