首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 ><display:column></display:cloumn>内部自定义html

<display:column></display:cloumn>内部自定义html
EN

Stack Overflow用户
提问于 2013-11-26 08:55:55
回答 2查看 11.3K关注 0票数 0

我想知道是否可以在列标记中呈现自定义html,这是显示表标记的一部分。

例如,我希望我的斗兽场有一些下拉列表在里面?

使用简单的html,如下所示:

代码语言:javascript
复制
<table>
...
<tr>
<td>
<select>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="mercedes">Mercedes</option>
  <option value="audi">Audi</option>
</select> 
</td>
</tr>
</table>

是否可以将选择标记嵌入到显示列中?这是显示列的演示

代码语言:javascript
复制
<display:column property="${displayElem.name}" escapeXml="true" sortable="true" titleKey="errorHandler.${displayElem.name}" style="width: ${displayElem.length}" />

编辑:当我试图删除显示列中的属性时,我只能在表单元格中获得html源代码,而不是该代码的html元素呈现。

代码语言:javascript
复制
 <display:column escapeXml="true"
       sortable="true" titleKey="errorHandler.${displayElem.name}"
       style="width: ${displayElem.length}" >
     <select>
       <option value="volvo">Volvo</option>
       <option value="saab">Saab</option>
       <option value="mercedes">Mercedes</option>
       <option value="audi">Audi</option>
     </select> 
</display:column>

解决方案:删除escapeXml=“真”属性已解决的问题

代码语言:javascript
复制
<display:column 
       sortable="true" titleKey="errorHandler.${displayElem.name}"
       style="width: ${displayElem.length}" >
     <select>
       <option value="volvo">Volvo</option>
       <option value="saab">Saab</option>
       <option value="mercedes">Mercedes</option>
       <option value="audi">Audi</option>
     </select> 
</display:column>

用于最终控制的解决方案2

创建类,用装饰器类扩展它,并使用它显示表标记。

代码语言:javascript
复制
public class YourDecorationClass extends TableDecorator {

    public String getAction() {
        String code = "";

        code = "<select>" +
                "<option value='volvo'>Volvo</option>" +
                "<option value='volvo'>Saab</option>" +
                "<option value='volvo_RETRY'>Mercedes_RETRY</option>" +
                "<option value='audi'>Audi</option>";

        return code;
    }
}

并在显示表标记中使用装饰器参数。

代码语言:javascript
复制
decorator="com.yourpackage.util.table.YourDecorationClass"

当然,从显示列标记中删除escapeXml="true“。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-26 09:38:29

是的,当然有可能。标签的文件说:

在表中显示行对象的属性。必须嵌套在Table标记中。所显示的值将是修饰器(如果有的话)的结果;否则是由' property‘属性命名的属性;或者如果'property’属性为null,则为,则为标记的JSP的计算结果。

(强调地雷)

票数 1
EN

Stack Overflow用户

发布于 2013-11-26 09:43:00

可以在对象的属性中设置HTML字符串。例如,在您的示例中,可以在${displayElem.name}中设置HTML。它将在Grid中生成一个组合框。

代码语言:javascript
复制
setName("<select><option value=\"JS\">John Seam<option></select>");
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20212325

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档