有没有人使用JSP/Servlet/Java技术实现了类似stackoveflow/digg的投票系统?如果有,你能把我重定向到书籍或在线材料吗?还有,是否已经有一些插件用于学习?
t98cgbkg1#
这里主要的关键词是Ajax,它基本上可以归结为让Javascript代码向服务器端发出一个异步请求(一个在“后台”的请求,这样客户端就不会看到任何“闪现的内容”),并在收到响应后最终遍历/更改HTML DOM树(可以通过Javascript中的document对象访问)中的元素。首先,将一些JS函数附加到表示向上和向下投票按钮的元素的click事件上。让这些JS函数向服务器发出一个异步请求,其中包含消息ID和投票状态(向上或向下),并通过遍历HTML DOM相应地更改表示数字的元素。基本上就是这样。为了避免与浏览器特定行为有关的痛苦,最好采用一个完全开发和维护的具有无轴功能的第三方Javascript框架,如jQuery。您只需进一步使用JSP/Servlet的通常方式:JSP作为一种视图/模板技术,可以用来编写必要的HTML/CSS/JS,并可以通过标记库动态控制输出servlet作为一个请求/响应控制器,只能用于控制请求并最终执行特定于请求的操作,而且也适用于无轴请求。我建议在servlet中使用Gson,以便能够发送和/或接收JSON字符串,这样Javascript就可以进一步处理它,而不需要任何转换麻烦。在jQuery网站上你可以找到很多“第四方”插件。Here你可以找到所有匹配关键字vote的插件。其中一个可能对你有用。
document
click
vote
1条答案
按热度按时间t98cgbkg1#
这里主要的关键词是Ajax,它基本上可以归结为让Javascript代码向服务器端发出一个异步请求(一个在“后台”的请求,这样客户端就不会看到任何“闪现的内容”),并在收到响应后最终遍历/更改HTML DOM树(可以通过Javascript中的
document
对象访问)中的元素。首先,将一些JS函数附加到表示向上和向下投票按钮的元素的
click
事件上。让这些JS函数向服务器发出一个异步请求,其中包含消息ID和投票状态(向上或向下),并通过遍历HTML DOM相应地更改表示数字的元素。基本上就是这样。为了避免与浏览器特定行为有关的痛苦,最好采用一个完全开发和维护的具有无轴功能的第三方Javascript框架,如jQuery。
您只需进一步使用JSP/Servlet的通常方式:JSP作为一种视图/模板技术,可以用来编写必要的HTML/CSS/JS,并可以通过标记库动态控制输出servlet作为一个请求/响应控制器,只能用于控制请求并最终执行特定于请求的操作,而且也适用于无轴请求。我建议在servlet中使用Gson,以便能够发送和/或接收JSON字符串,这样Javascript就可以进一步处理它,而不需要任何转换麻烦。
在jQuery网站上你可以找到很多“第四方”插件。Here你可以找到所有匹配关键字
vote
的插件。其中一个可能对你有用。