Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java struts2如何将值迭代器从jsp读取到操作_Java_Jsp_Struts2_Iterator - Fatal编程技术网

Java struts2如何将值迭代器从jsp读取到操作

Java struts2如何将值迭代器从jsp读取到操作,java,jsp,struts2,iterator,Java,Jsp,Struts2,Iterator,我是java和struts2新手,请帮忙。 我已经从一个操作中读取并处理了在jsp中创建的列表 我的问题是,如何从迭代器的操作访问数据? JSP页面 <s:iterator value="settoriList" var="myObj"> <tr> <td> <s:if test="#myObj.selected == 1"> <s:checkbox name="selected" fieldValue="%{cdSet

我是java和struts2新手,请帮忙。 我已经从一个操作中读取并处理了在jsp中创建的列表

我的问题是,如何从迭代器的操作访问数据?

JSP页面

<s:iterator value="settoriList" var="myObj">
<tr>
<td>
   <s:if test="#myObj.selected == 1">
      <s:checkbox name="selected"   fieldValue="%{cdSettore}" checked="checked"/>
      <s:property value="cdSettore" />
   </s:if>
   <s:if test="#myObj.selected == 0">
      <s:checkbox name="selected"  value="false" fieldValue="%{cdSettore}"  />
      <s:property value="cdSettore" />
   </s:if>
</td>
<td><s:property value="dsSettore" /></td>
<td><s:property value="dtIniVali" /></td>
<td><s:property value="dtFineVali" /></td>
</tr>
</s:iterator>
 </table>
  <s:hidden name="cdConve" />
  <s:hidden name="process"   value="saveSettori"/>
</s:form>

以下是我试图访问数据的方式

private List<GenSettori> settoriList;

public List<GenSettori> getSettoriList() {
    return settoriList;
}
public void setSettoriList(List<GenSettori> settoriList) {
    this.settoriList = settoriList;
}

private String[] selected;

public String[] getSelected() {
    return selected;
}
public void setSelected(String[] selected) {
    this.selected = selected;
}

--------
   settoriList = new ArrayList<GenSettori>();
   System.out.println("list sett: "+settoriList);
    for(int i=0;i<getSettoriList().size();i++){
     if (getSelected()[i]!=""){
         System.out.println("not selected "+getSelected()[i]);
  }      
   }

---------
私有列表设置器列表;
公共列表getSetTorList(){
返回设置列表;
}
公共无效设置列表(列表设置列表){
this.settoriList=settoriList;
}
选择私有字符串[];
公共字符串[]getSelected(){
返回选中的;
}
已选择公共无效设置(已选择字符串[]){
this.selected=selected;
}
--------
setToList=新的ArrayList();
System.out.println(“列表集合:+SetTorList”);

对于(inti=0;i,您可以通过以下几行从jsp到action类获取字符串数组

在jsp中

<s:hidden name="cdSettore" value="%{cdSettore}"></s:hidden>
<s:hidden name="cdSettore" value="%{cdSettore}"></s:hidden>
<s:if test="#myObj.selected == 1">
  <s:checkbox name="selected" fieldValue="%{cdSettore}" checked="checked"/>
  <s:property value="cdSettore" />
</s:if>
<s:if test="#myObj.selected == 0">
  <s:checkbox name="selected"  fieldValue="%{cdSettore}"  />
  <s:property value="cdSettore" />  
</s:if>     

如果你想,你可以使用

<s:if test="#myObj.selected == 0">
   <s:hidden name="cdSettore" value="%{cdSettore}"></s:hidden>
</s:if>

一次不被选中

行动课

private String[] cdSettore;

public void setCdSettore(String[] cdSettore) {
    this.cdSettore = cdSettore;
}
public String[] getCdSettore() {
    return cdSettore;
}

for(int i=0;i<getCdSettore().length;i++){
    System.out.println("not selected :"+getCdSettore()[i]);
} 
  for(int i=0;i<getCdSettore().length;i++){
        int flag=0;
        for(int j=0;j<getSelected().length;j++){
            if(getCdSettore()[i].equalsIgnoreCase(getSelected()[j]))
            {
                flag++;
            }
        }
        if(flag==0)
        {
         System.out.println("not selected :"+getCdSettore()[i]);
        }
    }
private String[]cdSettore;
公共无效集合cdSettore(字符串[]cdSettore){
this.cdSettore=cdSettore;
}
公共字符串[]getCdSettore(){
返回cdSettore;
}

对于(int i=0;i为对象
GenSettori
和什么是
cdSettore
dsSettore
…提供一些解释并提供文件名,请确切地说我不理解您想要做什么。GetSelected()将只获取选定的值。如何在选定的值中找到未选定的值?同时,您正在初始化数组并对其大小进行循环!!