0

我希望 JSP 中的选定值存储在列表(javascript)中并在 struts2 操作中检索它们。

例如:如果我有以下值,我如何存储在列表(javascript)中并在操作中检索它们

下拉 - 下拉 - 文本字段

频道名称 - 喜欢 - chan

ChannelType - 或 - type2

我希望将上述值存储在 javascript 列表中并在 struts2 中检索。

请帮我解决一下这个。

更新: JSP 代码

      <div class="row2">
<div class="left2">
        <select name="propType_1" id="propType_1">
           <option value="-1">Select property</option>
           <option value="3">keep-alive</option>
           <option value="2">transactionCapacity</option>
           <option value="1">capacity</option>
        </select>
</div>
<div class="left2">
        <select name="operType_3" id="operType_3">
            <option value="-1">Select operator</option>
            <option value="1">&amp;&amp;</option>
            <option value="2">Like</option>
            <option value="3">=</option>
        </select>
    </div>
    <div class="right2">
       <input type="text" name="prop1_value" value="" id="prop1_value"/>
    </div>
  <div class="clear"></div>
</div>
4

1 回答 1

0

尽可能使用 Struts 标记(<s:select/>如果您可以从服务器端提供您的列表),并避免在变量名称中添加下划线。

在行动:

private List<String>  propValue;
private List<Integer> propType;
private List<Integer> operType;

/* GETTERS AND SETTERS */

在 JSP 中,如果迭代的来源来自服务器端,或者您有一个已知的固定数量 row :

<s:iterator begin="0" end="10" stat="ctr" >
    <select name="propType[<s:property value='%{#ctr.index}'/>]" >
       <option value="-1">Select property</option>
        <option value="1" >........</option>
    </select>
    <select name="operType[<s:property value='%{#ctr.index}'/>]" >
        <option value="-1">Select operator</option>
        <option value="1" >........</option>
    </select>
    <input type="text" name="propValue[<s:property value='%{#ctr.index}'/>]" />
</s:iterator>

如果行是可变的和/或使用 JavaScript 创建的,只需确保使用相同的名称和索引创建它们,格式variableName[index]为 ,将索引作为 javascript 计数器处理。


顺便说一句,最好的选择是使用您的属性创建一个对象,并使用该对象的列表,而不是 n 个属性的 n 个列表:

行.java

public class Row {
    private String  propValue;
    private Integer propType;
    private Integer operType;

    /* GETTERS AND SETTERS */  
}

在行动:

private List<Row> rows;
/* GETTER AND SETTER */  

在 JSP 中:

<s:iterator value="rows" stat="ctr" >
    <select name="rows[<s:property value='%{#ctr.index}'/>].propType" >
       <option value="-1">Select property</option>
        <option value="1" >........</option>
    </select>
    <select name="rows[<s:property value='%{#ctr.index}'/>].operType" >
        <option value="-1">Select operator</option>
        <option value="1" >........</option>
    </select>
    <input type="text" name="rows[<s:property value='%{#ctr.index}'/>].propValue" />
</s:iterator>
于 2013-10-22T12:19:13.633 回答