刷新JSP页面中的单个组件
我可以刷新 JSP 中的 HTML 组件吗?我有两个下拉菜单。在第一个下拉列表中选择一个值后,将从数据库中获取下拉框中的值。使用 JSP 可以吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我可以刷新 JSP 中的 HTML 组件吗?我有两个下拉菜单。在第一个下拉列表中选择一个值后,将从数据库中获取下拉框中的值。使用 JSP 可以吗?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
首先,JSP 只是一种视图技术,它提供了编写 HTML/CSS/JS 的模板,并提供了使用标签库(如 JSTL)和表达式语言(那些
${}
与后端 Java 代码交互的工具)事物)。 JSP 在服务器计算机上运行,生成 HTML 页面并将其发送到客户端(如果右键单击页面并在 Web 浏览器中查看源代码,那么如果它正确完成了工作,您不应该看到任何 Java/JSP 代码行)。 JSP 不在客户端计算机上运行,因此不能直接用于在 HTML 页面中进行部分更新。为了实现你想要的,你需要使用 JavaScript 来触发异步 HTTP 请求(也称为Ajax 技术)来检索数据并操作 HTML DOM 树相应地添加新元素。由于触发 Ajax 请求和操作 HTML DOM 的方法可能因浏览器而异,因此我强烈建议选择 jQuery JavaScript 库保持简洁,不用担心在不同的网络浏览器中运行。
我之前已经发布过详细的答案,检查此答案中的解决方案#3< /a>.
First, JSP is just a view technology which provides a template to write HTML/CSS/JS in and offers facilities to interact with backend Java code using taglibs (like JSTL) and expression language (those
${}
things). JSP runs at the server machine, produces a HTML page and sends it to the client side (if you rightclick page and view source in webbrowser, then you should not see any line of Java/JSP code if it has done its work right). JSP does not run at the client machine and can therefore not be directly used to do partial updates in the HTML page.To achieve what you want, you need to use JavaScript to fire an asynchronous HTTP request (also known as the Ajax technique) to retrieve the data and manipulate the HTML DOM tree accordingly to add the new elements. Since methods to fire Ajax requests and manipulate the HTML DOM may differ among webbrowsers, I strongly recommend to pick the jQuery JavaScript library to keep it concise and simple without any worries about functioning in different webbrowsers.
I've posted an answer in detail about this before, check solution #3 in this answer.