gpt4 book ai didi

java - 如何使用 java spring 从选择输入选项中检索文本

转载 作者:行者123 更新时间:2023-12-01 09:28:50 26 4
gpt4 key购买 nike

我有一个 JSP,在表单中带有选择输入,如下所示:

<form method="post" action="/confirm">
<select id="dropdown" name="dropdown">
<option value="1">1st choice</option>
<option value="2">2nd choice</option>
<option value="3">3rd choice</option>
</select>
<input type="submit" value="submit" name="submit" />
</form>

我有一个 Spring Controller ,可以按如下方式处理此表单:

@RequestMapping(value = "/confirm", method = RequestMethod.POST)
public ModelAndView confirm(@RequestParam int dropdown,
HttpServletRequest request,
Model model)
{
ModelAndView modelAndView = new ModelAndView();
modelAndView.addObject("selection", dropdown);
modelAndView.setViewName("confirm");
return modelAndView;
}

在我的确认 View 中,如果我想显示下拉选择的值,那么我可以这样做:

<div id="dropselection">${selection}</div>

例如,如果用户选择第一个选项“第一选择”,则传递到确认页面的值将为 1

但是,如果我想传递选择标记选项中的文本值怎么办?如果用户选择了第一个选项并且我需要将值 1st choice 传递到 Controller 中怎么办?我该如何检索它?

最佳答案

您无法检索该值。表单提交时只传递select、input标签的value属性。

有两个选项

  1. 您可以将值字段文本更改为说明

如果您有硬代码,只需将其更改为

<option value="3rd choice">3rd choice</option>

如果你有动态代码,那么你可以使用这种方法

List<Answer> answerList = new ArrayList<Answer>();
Answer answer = new Answer();
answer.setAnswerId(3);
answer.setDescription(3rd choice);
ModelAndView modelAndView = new ModelAndView();
modelAndView.addObject("answerList", answerList);

<select id="dropdown" name="dropdown">
<option value="">Select</option>
<c:forEach items="${answerList}" var="answer" varStatus="answerStatus">
<option value="${answer.description}" label="${answer.description}"/>
</c:forEach>
</select>

或保持选项不变,在 Controller 级别,您可以从下拉请求参数中获取该值(示例:3)

之后,您可以循环答案列表(answerList)并在 Controller 级别查找值。

<c:forEach items="${answerList}" var="answer" varStatus="answerStatus">
<option value="${answer.answerId}" label="${answer.description}"/>
</c:forEach>

注意

answer.answerId = 3
answer.description = 3rd choice

关于java - 如何使用 java spring 从选择输入选项中检索文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39624992/

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