在我的Web应用程序(我的第一个Java,Spring,OR Roo)中,我正在构建一个与任何JPA对象无关的表单,它只是一个表单.我真的不想在这里使用JSTL来构建我的表单,因为此时它们没有数据支持.我正在使用瓷砖来组装页面,所以这种形式的胆量来自一个视图,但除此之外,没有任何关于它的JSP; 这只是一种形式.
在那个表单中,我有一个我写过的文本区域:
<textarea id="whatever" name="whatever"></textarea>
Run Code Online (Sandbox Code Playgroud)
当它出现在屏幕上时,</ textarea>标签消失了.不同的浏览器以不同的方式处理,直到并包括吞噬文本区域内的整个身体HTML的其余部分.
所以我尝试将一些内容放在textarea中.空格和换行符不会改变它的行为,但看起来任何非空格字符都可以.如果我走
<textarea>.</textarea>
Run Code Online (Sandbox Code Playgroud)
...它尊重我的密切textarea标签.但是当然我的文本区域在屏幕上呈现一个点,这不是我想要的.
这是一个已知的问题?难道我做错了什么?
编辑:@bozho:这是我的jsp的一个相关部分:
<div id="notes" class="detailPanel">
<div class="panelLabel">Notes</div>
<table >
<thead><tr><th>Date</th><th>By</th><th>Note</th></tr></thead>
<tbody id="notesBody"></tbody>
</table>
<textarea id="newNote" rows="5" cols="80" >.</textarea>
<button id="addNewNote" onClick="saveNote();">Add New Note</button>
</div>
Run Code Online (Sandbox Code Playgroud)
绝对没有什么花哨在这里(我在客户端填充行的tbody,这就是为什么这是空的).如果没有倒数第三行中的点,则结果textarea标记不会出现在生成的HTML中.
EDIT2(解决方案):
在听到人们回答的一些关键词后,此URL变为可转发:http://www.jroller.com/komu/entry/textareas_with_jspx
事实证明,当解析jspx页面时,空标签会折叠成一个自动关闭标签,从而打破文本区域.解决方案是在中间放置一个空的jsp:text:
<textarea><jsp:text /></textarea>
Run Code Online (Sandbox Code Playgroud)
(这是愚蠢的,但它确实存在.)
你正在使用jspx文件吗?一般情况下,jspx删除一些东西(或者在你的情况下它会缩短它:检查一下:我希望它会增加前一个开头标记的斜线,所以它变成<textarea id="whatever" name="whatever"/>:)它所在的地方不需要它.究竟什么依赖于实施的一点点.
因此<jsp:text>,在文本区域标记中放置一个标记,以防止它"关闭"
<jsp:text>
<textarea id="whatever" name="whatever"></textarea>
</jsp:text>
Run Code Online (Sandbox Code Playgroud)
<textarea id="whatever" name="whatever"><jsp:text /></textarea>
Run Code Online (Sandbox Code Playgroud)
对于一个更复杂的例子,看看这个答案:websphere 7(和Spring Roo)与javax.el.ELException不兼容
| 归档时间: |
|
| 查看次数: |
2362 次 |
| 最近记录: |