我有一个非常奇怪的问题。
<table border ="1">
<tbody>
<c:forEach var="question" items="${questions}">
<tr>
<td>
${question.getQuestion()}
</td>
<td>
<c:forEach var="answer" items="${question.getAnswers()}">
<input type="checkbox" name ="user_answer" value="${answer.getAnswer()}">
${answer.getAnswer()}
<br />
</c:forEach>
</td>
<td>
<a href="/TutorWebApp/controller?command=edit_qestion&question=${question}">
Edit
</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
但是如果我使用 in 我会收到下一个错误
但是如果我不使用标签<a>
在<td>
没关系。我没有任何想法。
谢谢
最佳答案
我认为这只是您的编辑器的错误/限制。尝试部署您的 JSP 并查看它是否按预期工作。
也就是说,如果您的问题包含必须经过 URL 和/或 HTML 转义的字符,您的 HTML 代码将无效。您应该使用 c:url
标记来避免这种情况:
<c:url var="editQuestionUrl" value="/TutorWebApp/controller">
<c:param name="command" value="edit_question"/>
<c:param name="question" value="${question}"/>
</c:url>
<%-- now the params are url-encoded --%>
<a href="${fn:escapeXml(editQuestionUrl)}">Edit</a>
<%-- now the query string is HTML-escaped --%>
关于java - 在查询 href 中的标记 <td><a href ="....."></a></td> DOUBLE_WHITESPCE 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10468795/