`
penwei
  • 浏览: 27032 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

action中得到<s:optiontransferselect/>标签中的内容

阅读更多
struts2的 action中得到<s:optiontransferselect/>标签中的内容
关键字: struts2 action <s:optiontransferselect/>

最近用到struts2 <s:optiontransferselect/>标签,要求在action中获取<s:optiontransferselect/>标签中的内容

出现这个问题后,发现确实很难实现,所以就Google了下,但获取答案却不理想

但研究struts2的demo后,发现他们可以正常获取的,所以就研究了下,发现问题其实很简单:

在此,借用下Google时,搜索到的一个问题
Html代码
<s:form action="TestTagLib">
        <s:optiontransferselect
    label="optiontransferselect Test"
    labelposition="top"
    list="{'thomas1','ada','lothar'}"
    name="leftList"
    addToLeftLabel="向左移动"
    addToRightLabel="向右移动"
    addAllToLeftLabel="left"
    addAllToRightLabel="right"
    doubleName="rightList"
  doubleList="{'Expert One-on-One J2EE Design and Development', 'JavaScript: TDefinGuide'}" 
          />
      <s:submit  value="login"/> 
  </s:form> 
<s:form action="TestTagLib"> 
 &nbsp; &nbsp; &nbsp; &nbsp;  <s:optiontransferselect  
 	&nbsp; &nbsp; label="optiontransferselect Test" 
 	&nbsp; &nbsp; labelposition="top" 
 	&nbsp; &nbsp; list="{'thomas1','ada','lothar'}" 
 	&nbsp; &nbsp; name="leftList" 
 	&nbsp; &nbsp; addToLeftLabel="向左移动" 
 	&nbsp; &nbsp; addToRightLabel="向右移动" 
 	&nbsp; &nbsp; addAllToLeftLabel="left" 
 	&nbsp; &nbsp; addAllToRightLabel="right" 
 	&nbsp; &nbsp; doubleName="rightList" 
 	&nbsp;  doubleList="{'Expert One-on-One J2EE Design and Development', 'JavaScript: TDefinGuide'}"&nbsp;  
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; /> 
 &nbsp; &nbsp; &nbsp;  <s:submit&nbsp; value="login"/>&nbsp;  
 &nbsp;   </s:form> 
  
 然后提交到TestTagLibAction中,在action中设置了setter(),getter()方法,关键代码如下: 
  
 private List leftList; 
 private List rightList; 
  
 	public List getLeftList() { 
 		return leftList; 
 	} 
  
 	public void setLeftList(List leftList) { 
 		this.leftList = leftList; 
 	} 
  
 	public List getRightList() { 
 		return rightList; 
 	} 
  
 	public void setRightList(List rightList) { 
 		this.rightList = rightList; 
 	} 
  
 为什么在execute()方法中得不到 rightList的值? 其中rightList对应前面jsp页面中 <s:optiontransferselect/>的doublename="rightList"标签,代码如下: 
  
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  List list1=getRightList(); 
 		for(int i=0;i <list1.size();i++){ 
 			System.out.println(list1.get(i).toString()); 
 		} 

提交后,就能在后台得到rightList里面的值了。
如果没有这段Js代码,后台是得不到值的,这是Struts2 <s:optiontransferselect/>本身的bug.

呵呵,首先感谢这位兄弟的回答,这样做应该是可以的(ps:我没有测试)

但这不是struts2的bug

问题出在html中的代码上

用firebug监控表单的提交的时候,会获取到一个dojo错误,其实问题很简单:

缺失
Html代码

   1. <s:head/> 

<s:head/>



这个标签

因在struts2中集成了dojo,所以不导入dojo肯定会出现问题了

呵呵,就这么简单.

非常感谢上面引述的那位兄弟的回答



以上问题的来源地:http://topic.csdn.net/u/20080127/15/4539cf2e-7309-4de8-9289-fa0fe02496b5.html
分享到:
评论
2 楼 moment52 2011-09-05  
如果我的list=“”的值是动态生成的,那我要怎么写呢?
1 楼 flyingheart2010 2011-01-20  
您好!我想问一下<s:head/>放在页面的哪呢。

相关推荐

    Struts2标签 UI标志又可以分为表单UI和非表单UI两部分

    - `&lt;s:form&gt;` 标签是创建表单的基础,其常用属性包括`action`、`method`、`enctype`等。 - 示例: ```xml &lt;s:form action="exampleSubmit" method="post" enctype="multipart/form-data"&gt; &lt;s:submit/&gt; &lt;s:...

    struts2 标签 s:optiontransferselect左右下拉列表的使用。

    在Struts2中,`s:optiontransferselect`是一个特殊的标签,用于创建具有双向选择功能的下拉列表,即“左列表”和“右列表”,用户可以在这两个列表之间转移选项,常用于多选场景。 **1. `s:optiontransferselect` ...

    struts2 标签库 帮助文档

    7. &lt;s:autocompleter&gt;&lt;/s:autocompleter&gt;-----自动完成&lt;s:combobox&gt;标签的内容,这个是ajax B: 1. &lt;s:bean name=""&gt;&lt;/s:bean&gt;-----类似于struts1.x中的,JavaBean的值 C: 1. &lt;s:checkbox&gt;&lt;/s:checkbox&gt;---...

    Struts2标签列表及说明

    * &lt;s:autocompleter&gt;:自动完成 &lt;s:combobox&gt; 标签的内容,这个是 AJAX 实现的 B: * &lt;s:bean&gt;:类似于 Struts1.x 中的 JavaBean 的值 C: * &lt;s:checkbox&gt;:复选框 * &lt;s:checkboxlist&gt;:多选框 * &lt;s:combobox&gt;:...

    struts2的s标签

    &lt;p&gt;名称:&lt;s:property value="name"/&gt;&lt;/p&gt; &lt;/s:iterator&gt; ``` - **说明**:遍历一个集合或数组,并对每个元素执行标签体内的内容。 25. **`&lt;s:label&gt;`** - 显示标签。 - **示例**: ```jsp &lt;s:label value=...

    struts2标签介绍

    2. `&lt;s:action&gt;` - 执行视图中的Action,通常用于导航,如:`&lt;s:action name="myAction" executeResult="true"&gt;Execute Action&lt;/s:action&gt;`。 **B组标签:** 1. `&lt;s:bean&gt;` - 类似于Struts1中的JavaBean操作,但在...

     strut2 标签详解

    4. `&lt;s:push&gt;`:将值推入栈中,便于`&lt;s:property&gt;`标签访问。 R组标签: 1. `&lt;s:radio&gt;`:创建单选按钮,允许用户从一组中选择一个选项。 2. `&lt;s:reset&gt;`:重置按钮,清除表单数据。 S组标签: 1. `&lt;s:select&gt;`:...

    struts2-s标签

    这些标签用于创建下拉列表和子集选择框,`&lt;s:select&gt;` 创建标准的下拉列表,而 `&lt;s:subset&gt;` 可以从集合中选择子集。 **示例:** ```xml &lt;s:select name="country" list="countries" headerKey="-1" headerValue=...

    struts2标签大全详解

    2. `&lt;s:action&gt;`:执行视图中的一个Action,可以传递参数并跳转到对应的Action结果页面。 3. `&lt;s:actionerror&gt;`:显示Action级错误信息,如果有错误则会被渲染出来。 4. `&lt;s:actionmessage&gt;`:显示Action级消息,...

    struts2标签库

    1. `&lt;s:if test=""&gt;&lt;/s:if&gt;`、`&lt;s:elseif test=""&gt;&lt;/s:elseif&gt;`和`&lt;s:else&gt;&lt;/s:else&gt;`:条件判断标签,用于控制页面的逻辑显示。 F部分: 1. `&lt;s:fielderror&gt;&lt;/s:fielderror&gt;`:显示字段级别的错误信息。 2. `&lt;s:...

    Struts标签集合简介

    `&lt;s:token&gt;` 用于防止重复提交,`&lt;s:tree&gt;` 创建树形结构,`&lt;s:treenode&gt;` 定义树节点,`&lt;s:updownselect&gt;` 创建可上下选择的多选框,`&lt;s:url&gt;` 生成URL,通常与Action关联。 以上就是Struts标签的基本介绍,它们极...

    struts2.0 标签清单

    `&lt;s:form&gt;` 标签用于创建表单,可以指定Action、Method等属性,是Struts2中最常用的标签之一。 ```xml &lt;s:form action="saveData"&gt; &lt;!-- 表单内容 --&gt; &lt;/s:form&gt; ``` ### 17. `&lt;s:generator&gt;` 标签 `&lt;s:...

    struts2标签整理

    `&lt;s:action&gt;` - 动作标签 该标签用于执行一个Action,并跳转到指定的结果视图。 ```jsp &lt;s:action name="myAction"&gt; &lt;!-- 可以包含其他表单元素 --&gt; &lt;/s:action&gt; ``` ##### 3. `&lt;s:actionerror&gt;` - 显示动作错误...

    struts2标签大全

    - `&lt;s:actionerror/&gt;`:如果Action中有错误信息,此标签会显示出来。 - `&lt;s:actionmessage/&gt;`:如果Action中有消息,此标签会显示消息。 **C. 复选框和列表** - `&lt;s:checkbox&gt;&lt;/s:checkbox&gt;`:创建复选框,可以设置...

    struts2标签解释

    `&lt;s:action&gt;`标签则是用来执行视图中的一个Action,通常用于页面间的跳转和业务逻辑的触发。 B. `&lt;s:bean&gt;`: 此标签类似于Struts1中的JavaBean引用,用于在JSP页面中引用JavaBean的属性。 C. `&lt;s:checkbox&gt;` 和 `...

    下面就介绍下Struts2每个标签的用法(有错请指正):

    `&lt;s:action&gt;` 标签 - **用途**:该标签用于将一个视图中的动作链接到后端的动作处理类。 - **示例**: ```xml &lt;s:action name="myAction" namespace="/myNamespace"&gt; &lt;!-- 其他代码 --&gt; &lt;/s:action&gt; ``` ####...

    Struts2标签详解及具体实例解析

    `&lt;s:action&gt;` 执行Action标签 - **用途**:执行一个Action。 - **示例代码**: ```xml &lt;s:action name="myAction" execute="true"/&gt; ``` - **解释**:此标签将执行名为“myAction”的Action。 ##### 3. `&lt;s:...

    Struts2标签库详解.doc

    3. `&lt;s:actionerror/&gt;`:如果Action中的错误信息有值,会将其显示出来,方便用户了解操作过程中出现的问题。 4. `&lt;s:actionmessage/&gt;`:如果Action中的消息有值,会显示出来,通常用于提示用户操作成功的信息。 5....

Global site tag (gtag.js) - Google Analytics