gpt4 book ai didi

java - 修剪输入框并添加到上下文 JSTL

转载 作者:行者123 更新时间:2023-12-01 15:04:00 25 4
gpt4 key购买 nike

我是 JSTL 世界的新手,所以请对我温柔一点,我已经阅读过,但找不到解决方案。

我想修剪输入框开头和结尾的空格,因此当用户单击提交按钮时,我的 Controller 会收到不带空格的字符串。

请不要建议我使用其他框架,因为我已经遇到了这个问题,当我掌握了这个之后,我将进入下一步。

这是我的JSP代码,我尝试过这个,但不起作用,似乎上下文没有保留我传递的值,之后我只是尝试......任何帮助表示赞赏!

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<LINK REL=StyleSheet HREF="resources/index-style.css" TYPE="text/css">
<title>Submit a new academic!</title>
</head>
<div class="home">
<a href="index"><img src="resources/home.png" /></a>
</div>
<div class="list">
<h1>This is the place where you register a new Academic on the
system!</h1>
</div>
<p></p>

<div class="list">
<form action="addAcademicAction" method="post">
<p>Submit your name:</p>
<input type="text" name="academicName"><br>
<p>Level of education</p>
<input type="radio" name="educationLevel" value="student" checked>Student<br>
<input type="radio" name="educationLevel" value="csstudent">Computer
Science Student<br> <input type="radio" name="educationLevel"
value="professor">Professor<br> <br>
<button name="submit" type="submit" value="HTML">Add
Academic!</button>
</form>
</div>

<c:if test="${context.request.method=='POST'}">
<c:set var="academicName" value="${fn:trim(param.academicName)}"/>
</c:if>

<body>
</body>
</html>

最佳答案

您似乎不了解 JSP 的工作原理。 JSP 在服务器端执行。这只是编写 servlet 的另一种方法。它的目标是生成 HTML,并将其发送到浏览器。

<c:set>标签用于设置页面范围属性。您可以将其视为当前 JSP 执行的本地变量。所以上面或多或少相当于这个:

out.println("<html>");
out.println("<head>");
...
out.println("</div>");
String academicName = null;
if (request.getMethod().equals("POST")) {
academicName = request.getParameter("academicName").trim();
}
out.println("</body>");
out.println("</html>");

因此,明确地说,您正在定义一个从未使用过的局部变量。

如果你想修剪由JSP生成的表单提交的内容,则不是这个JSP必须修剪参数,而是Spring Controller 将接收表单提交,因此映射到路径“addAcademicAction” ”。

关于java - 修剪输入框并添加到上下文 JSTL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13223050/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com