我使用struts-html来生成表单字段。
例如:
<%@ taglib prefix="html" uri="/WEB-INF/taglibs/struts-html.tld" %>
<html:text property="email" styleId="email" size="44"/>生成:
<input type="text" name="email" size="44" value="" id="email"> 如上文所示,生成的输入标记没有关闭。这将导致我的html无效。
struts-html.tld包括:
<tlibversion>1.2</tlibversion>
<jspversion>1.1</jspversion>
<shortname>html</shortname>
<uri>http://struts.apache.org/tags-html</uri>有人知道为什么生成的输入不关闭吗?有更新的版本吗?在哪里可以下载?
我试着用:
<html:html xhtml="true">它呈现为:
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US"> 但是,我的输入标记始终未关闭。
解决方案:
使用标签:
<html:xhtml/>注意:--如果像我一样使用Tiles,直接在包含的jsp中使用它。它不是从基本模板文件继承的。
注意:在xhtml模式下的,您不能在html:form标记中使用sytleId。这不是一个问题,因为id属性是自动生成的,以存储bean的名称。
发布于 2009-01-15 11:18:43
你不能只使用吗?
在页面中使用此标记的
告诉所有其他html标记将自己呈现为XHTML1.0
或者,您可以使用<html:html xhtml="true">。
发布于 2009-01-15 11:10:35
input标记不必在HTML中关闭,所以我猜Struts并不知道您正在尝试生成XHTML。遗憾的是,我的Struts-fu太古老了,我不知道该如何修复它。也许您应该回到HTML,而不是XHTML;XHTML只在使用其他名称空间(如SVG或MathML )时才使用。
发布于 2009-01-15 11:18:43
必须有一个支持Java代码来完成实际的生成。抓取库的源代码,因为它已经是开源的,并检查代码在追加结束标记closing‘>括号’>时是否参考了一些参数。如果它根本没有这样做,您可以修改库,使用修补版本并贡献补丁程序。
https://stackoverflow.com/questions/446376
复制相似问题