防止struts 2自动生成id

时间:2017-12-30 05:23:10

标签: jquery jsp struts2

在struts 2中使用id属性创建以下元素。

<s:select style="min-width:7.5em;max-width:15.5em;" class="form-control"  headerKey="SELECT" headerValue="SELECT" list="costCenters" required="true" name="costCenter" />

我不想要这个ID,因为后来我会在jquery.clone()&#39;它。

当前输出:

 <select name="costCenter" id="formName_costCenter" class="form-control" style="min-width:7.5em;max-width:15.5em;" required="true">
<option value="SELECT" selected="selected">SELECT</option>
<option value="COST CENTER 1">COST CENTER 1</option>
<option value="COST CENTER 2">COST CENTER 2</option>
</select>

所需:

 <select name="costCenter" class="form-control" style="min-width:7.5em;max-width:15.5em;" required="true">
<option value="SELECT" selected="selected">SELECT</option>
<option value="COST CENTER 1">COST CENTER 1</option>
<option value="COST CENTER 2">COST CENTER 2</option>
</select>

struts.xml有

<constant name="struts.ui.theme" value="simple"/>

1 个答案:

答案 0 :(得分:1)

Struts id属性是自动生成的,但您可以手动设置id属性。 <s:select>标记的id属性表示HTML id属性。

除非您更改从id标记呈现HTML的模板,否则您无法阻止Struts生成<s:select>属性。您可以在Tag开发人员指南中详细了解Themes and Templates。您还可以阅读this答案,以帮助了解Struts UI标记。

使用jQuery从元素中删除属性的另一种方法是removeAttr()函数。

$("#formName_costCenter").removeAttr("id");