使用javascript数组填充struts2选择标记

时间:2016-03-04 19:12:24

标签: javascript jquery html jsp struts2

是否可以在加载时使用javascript数组填充Struts 2 select标记?

我有一个代码

<s:select id="attrStpSel" name="attrStpSel" headerKey="-1"
          headerValue="Select" list="${attributeActions}"
          labelposition="left" onchange="displaySelectAction()"
          cssStyle="width: 300px;" />

这是页面中的脚本。

<script type="text/javascript">
    $(document).ready(function() {
        var attributeActions = [ 'Add', 'Update', 'Search' ];
    });
</script>

由于它是硬编码值,我不希望它们从行动中填充。使用上面的代码,javascript变量attributeActions没有被选中。

将静态列表填充到Struts 2选择标记中的理想方法是什么?

2 个答案:

答案 0 :(得分:1)

您可以使用#{}创建内联列表:

<s:select name = "attrStpSel" 
     headerKey = "-1"
   headerValue = "Select" 
          list = "#{'Add','Update','Search'}" />

您还可以使用相同的表示法创建内联地图:

<s:select name = "attrStpSel" 
     headerKey = "-1"
   headerValue = "Select" 
          list = "#{'0':'Add' , '1':'Update' , '2':'Search'}" />

答案 1 :(得分:0)

Struts select tag渲染普通的html 1/3。它还为生成的html添加了额外的标签,属性和CSS,因为它是UI标签。您可以阅读有关s:select标记的更多信息。

  

呈现select类型的HTML输入标记。

如果你想用javascript填充这个select标签你可以做这样的事情

select