【问题标题】:Printing multiple HTML lines from JSP从 JSP 打印多个 HTML 行
【发布时间】:2011-11-06 20:35:43
【问题描述】:
    out.println(%><form> + 
        <p><label for="username">Username:</label><input type="text" name="username" /></p>  + 
        <p><label for="password">Password:</label><input type="password" name="password" /></p> +
        <p class="submit"> +
            <input type="submit" name="button" value="Login" /> +
            <input type="submit" name="button" value="Registrer" /> +
        </p> +
    </form> <%);

这就是我认为我可以做到的,但显然我不能,所以我的问题是,我如何打印多行 HTML? 有没有比我现在做的更好的方法?

【问题讨论】:

    标签: html jsp multiline println


    【解决方案1】:

    你不能。您必须将它们放在一个带引号的大字符串中。

    out.println("<form>" + 
        "<p><label for=\"username\">Username:</label><input type=\"text\" name=\"username\" /></p>"  + 
        "<p><label for=\"password\">Password:</label><input type=\"password\" name=\"password\" /></p>" +
        "<p class=\"submit\">" +
            "<input type=\"submit\" name=\"button\" value=\"Login\" />" +
            "<input type=\"submit\" name=\"button\" value=\"Registrer\" />" +
        "</p>" +
    "</form>");
    

    但更好的是使用out.println()(以及JSP 中的所有其他scriptlet)。将纯 HTML 放入 JSP 中,并在必要时使用 JSTL 核心标签来控制流程。

    例如

    <c:if test="${empty activeuser}">
      <form>
        <p><label for="username">Username:</label><input type="text" name="username" /></p>
        <p><label for="password">Password:</label><input type="password" name="password" /></p>
        <p class="submit">
          <input type="submit" name="button" value="Login" />
          <input type="submit" name="button" value="Registrer" />
        </p>
      </form> 
    </c:if>
    

    另见:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-05
      • 1970-01-01
      • 2016-08-04
      • 2021-04-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多