java - 通过 servlet 填充 html 表单字段

标签 java jsp servlets

所以问题就像我们使用 request.getParameter() 通过 servlet 操作表单字段的值一样,我们可以反过来做,即从 servlet 本身设置表单字段值吗?

基本上我想做的是创建一个下拉菜单和一些文本框。下拉列表从数据库中获取 id,当用户选择特定 id 时,文本框应填充数据库中该 id 的其他值,以便用户可以相应地编辑它们或保持不变。

例如:html代码是:

 <form action="GetValues">
<select name="ids"><option>1</option><option>2</option></select>
<input type="submit" value="Edit">
</form>
<form action="Save">
    Product name:<input type="text" name="name" id="tb1"/></br>
Price:<input type="text" name="price" id="tb1"/>

<input type="submit" value="Save">
</form>

Getvalues servlet 建立数据库连接并从数据库获取名称和价格的值,我可以这样做,但是如何在两个文本框中显示这些值?

我可以使用 Save.java servlet 从文本字段获取值并将其更新到数据库中。

我不太习惯使用 JSP scriptlet。我想仅使用 servlet 来完成此操作。

我知道我可以使用 servlet 本身创建文本框,但这对我不起作用,因为这会使我在表单上的 jquery 失效。

就像我们在 JavaScript 中所做的那样:

var x="hii";
document.getElementById("tb1").value=x;

Java中也有类似的东西吗?

最佳答案

我知道您没有请求任何 scriptlet,但在我看来,这是最简单的方法。

在您的 servlet 中,设置请求属性,如下所示:

request.setAttribute("attributeName", attributeValue);

然后在你的jsp中,你可以像这样访问attributeValue:

<%= request.getAttribute("attributeName") >

编辑:对于评论中的后续问题,以下是如何使用 scriptlet 在选择框中显示 ID:

首先,在 servlet 中设置 ID 列表:

List<String> idList = ...;
request.setAttribute("idList", list);

然后在您的 JSP 中,按如下方式构造选择字段:

<select name="ids">
  <% 
    List<String> idList = request.getAttribute("idList");
    for(String id : idList) {
  %>
      <option><%=id></option>
  <%
    }
  %>
</select>

关于java - 通过 servlet 填充 html 表单字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24658978/

相关文章:

java - 代码未显示正确的输出

java - 如何为 servlet 和对象数组设置数据表?

在 android 中添加 google place API 时出现 java.lang.IllegalStateException

java - url 模式 Servlet Tomcat 7.0

java - 构建节点共享相同信息的二叉树

java - 关于jsp生命周期

java - 如何在我的 jsp 页面上获得功能更全的编辑器?

javascript - 我的 REST 调用不运行页面的 javascript

java - 运行我的 WAR 文件时出现 Tomcat 404 错误

java - Hibernate HQL 返回过时的数据?