1

我想为 JSTL XML 中的选择属性提供动态值

我有以下代码

<x:forEach var="product" begin="${startRange}" end="${endRange}" select="$doc/queryProductResponse/product">
 <c:set var="nameElement" value="name"/>
 <tr class="tableRow">
          <td>
            <x:out select="$product/[nameElement]" />
          </td>
  </tr>

在这里,我正在读取产品 xml,我想动态查找元素值。所以无论我想要获取的元素都存储在一个变量中。所以在上面的代码中,我将元素名称存储在一个名为 nameElement 的变量中,我是试图传递给 x:out 标签的 select 属性。但它不起作用。无论如何使用JSTL动态指定元素名称?

4

1 回答 1

1

我得到了答案。使用 XPath 名称函数,我们可以动态指定属性名称。

<c:set var="elementName" value="description"/> 
<x:out select="$product/*[name()=$elementName]" />
于 2012-11-08T05:28:30.760 回答