想要在jsp页面中动态填充文本框

2024-01-11

想要使用 jsp 页面创建一个应用程序,以便它从文本框中的用户处获取一个值,并根据该值从数据库中检索其他值,并用检索到的值填充其他文本框


  1. 创建一个 HTML 表单并将其放入search.jsp:

    <form action="search" method="post">
        <input type="text" name="query">
        <input type="submit">
    </form>
    
  2. 创建一个 Java 类extends HttpServlet并执行所需的业务任务:

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String query = request.getParameter("query");
        Data data = someDAOClass.find(query);
        request.setAttribute("data", data); // Will be available in EL by ${data}
        request.getRequestDispatcher("search.jsp").forward(request, response); // Return back to JSP page.
    }
    

    将此 servlet 映射到url-pattern of /search in web.xml这样它将在提交 JSP 中的表单后执行。

  3. 使用应显示此数据的输入字段扩展表单。只需填写value具有所需信息的输入元素的属性。

    <form action="somethingelse" method="post">
        <input type="text" name="id" value="${fn:escapeXml(data.id)}" />
        <input type="text" name="name" value="${fn:escapeXml(data.name)}" />
        <input type="text" name="email" value="${fn:escapeXml(data.email)}" />
        <input type="text" name="age" value="${fn:escapeXml(data.age)}" />
        ...
    </form>
    

    The fn:escapeXml顺便说一下,这是为了防止XSS。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

想要在jsp页面中动态填充文本框 的相关文章

随机推荐