0
<%@ tag body-content='empty' dynamic-attributes='tagAttrs' 
%> 
<%@ attribute name='optionsList' type='java.util.List' 
required='true' rtexprvalue='true' %> 
<%@ attribute name='name' required='true' %> 
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 
<select name='${name}' 
<c:forEach var="attrEntry" items="${tagAttrs}"> 
${attrEntry.key}='${attrEntry.value}' 
</c:forEach> 
> 

<c:forEach var="option" items="${optionsList}"> 
<option value='${option}'> ${option} </option> 
</c:forEach> 
</select> `  

所以在这个例子中,我们从那里得到 tagAttrs var。它是一个haspmap,但谁设置了这个值。以及它如何验证属性的正确值。

而且当我在 eclipse 中粘贴这段代码时,我在线上遇到错误

错误是:isValid() == falsewhat is this, i have never this type of error.

4

1 回答 1

0

动态属性的想法是能够传递一组属性,甚至不需要提前知道它们的名称。在这种情况下,标记属性可以是styleclassid以及 HTML 选择框可以具有的所有其他标准或非标准属性。例如:

<tags:select name="preferredSport"   <%-- required name attribute --%>
             optionsList="${sports}" <%-- required optionsList attribute --%>
             id="preferred-sport"    <%-- dynamic attribute --%>
             class="inline"          <%-- dynamic attribute --%>
             style="color: red;" />  <%-- dynamic attribute --%>
于 2013-07-26T15:05:48.623 回答