【问题标题】:How to keep html formating in jsp [duplicate]如何在jsp中保持html格式[重复]
【发布时间】:2016-01-08 09:22:19
【问题描述】:

我需要将 html 代码传递到 jsp 页面,因此我从同一页面发出 ajax 请求来更新 div。

servlet 代码:

String greetings = "<h1>Hello from servlet</h1>";
response.setContentType("text/html;charset=UTF-8");
response.getWriter().write(greetings);

jsp:

<div id="ajaxGetUserServletResponse"></div>

我进入页面:&lt;h1&gt;Hello from servlet&lt;/h1&gt; 而不是 h1 标记的 html 表示。如何修复它以保留jsp中的html格式?

编辑:

不建议从服务器发送 HTML 响应。您也可以将&lt;h1&gt; 标记留在JSP 中。但是,如果您坚持这样做,应该为您设置它

response.setContentType("text/html");
PrintWriter out = response.getWriter();

out.println("<h1>Hello from servlet</h1>");

【问题讨论】:

  • 你为什么要把你的布局放在你的java代码中?这就是 jsp 文件的用途。
  • @Stultuske 好吧,我知道,但在某些情况下这样做很有用
  • 你问错问题了。将其重构为 “我在 JavaScript 字符串变量中有一些 HTML 代码,就像这样 [...],我想将它添加到文档中的以下 HTML 元素 [...],我目前正在尝试这样做 [...],但它显示为文本而不是 HTML。” 填写空白并重新标记为 JavaScript/HTML。这一切都与 Java/JSP/Servlets 完全无关。
  • @BalusC 实际上我的 HTML 代码不在 JavaScript 字符串变量中,而是在 servlet 中。 javascript 只是向 servlet 发出 ajax 请求。
  • 你不了解我,也不了解 webdev 基础知识。发出 ajax 请求的 JS 代码最终会在一个字符串变量中获取该 HTML,然后将其放入该 div 中。正是这一步做错了。将 HTML 字符串放在硬编码的 JS 变量中而不是从 ajax 响应中获取并没有什么不同。再次,按照上述方式重新构建您的问题,并用您使用的代码填写空白。

标签: java html servlets


【解决方案1】:

不建议从服务器发送 HTML 响应。您也可以在 JSP 中留下 &lt;h1&gt; 标记但是,如果您坚持这样做,应该为您设置它

response.setContentType("text/html");
PrintWriter out = response.getWriter();

out.println("<h1>Hello from servlet</h1>");

【讨论】:

  • 我想写这个作为评论,因为我没有 50 个代表我必须回答
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-03-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-03
  • 1970-01-01
相关资源
最近更新 更多