首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

模仿QQ聊天用jsp做了一个简单的聊天程序遇到的几个问题!有兴趣者入

2012-01-02 
模仿QQ聊天用jsp做了一个简单的聊天程序遇到的几个小问题!有兴趣者入!我写了一个聊天的小程序,主界面是一

模仿QQ聊天用jsp做了一个简单的聊天程序遇到的几个小问题!有兴趣者入!
我写了一个聊天的小程序,主界面是一个frameset,包含了三个页面:input.jsp(用来让用户输入聊天信息),chatSpace.jsp(用来显示聊天信息),user.jsp(显示在线用户)。

问题1:
input.jsp里用到了一个表单text来提交聊天信息,如何在用户发送该信息后,让text域清空呢?我试了用一个javaScript函数作前台验证,当用户点下submit时,onclick“erase()”,但是这样的话,text中聊天信息就传不到chatSpace.jsp里了!怎样才能在chatSpace.jsp文件接受到text里的值后才将text域清空呢?

问题2:
因为是一个frameset,chatSpace.jsp里边有个滚动条,但是每次用户提交聊天信息以后,chatSpace.jsp里的滚动条都会跳到最上端,要阅读聊天信息还得往下拉,很不方便,怎样才能让滚动条一直在最下方呢?就像QQ似的?



[解决办法]

问题1:
在text控件中加个键盘事件,针对敲回车时触发submit

[解决办法]
package liaotian;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;

public class MessageServlet extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=GBK ";

//Initialize global variables
public void init() throws ServletException {
}

//Process the HTTP Get request
public void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
response.setCharacterEncoding( "GBK ");
request.setCharacterEncoding( "GBK ");
response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
out.println( " <html> ");
out.println( " <head> <title> MessageServlet </title> </head> ");
out.println( " <body bgcolor=\ "#ffffff\ "> ");
String strMsg = request.getParameter( "message ");
if (strMsg==null||strMsg.equals( " "))
{
displayHtml(out);
}
else
{
ServletContext app = getServletContext();
StringBuffer objMsg =(StringBuffer)app.getAttribute( "objMessage ");
if (objMsg==null)
{
objMsg = new StringBuffer();
}
String name = request.getParameter( "name ");
objMsg.append( " <b> "+name+ "说: </b> "+strMsg+ " <br> ");
app.setAttribute( "objMessage ",objMsg);
displayHtml(out);
}

out.close();
}
public void displayHtml(PrintWriter out)
{
out.println( " <html> ");
out.println( " <head> <title> MessageServlet </title> </head> ");
out.println( " <body bgcolor=#ffffff onload = javascript:frm.message.focus()> ");
out.println( " <form method = post name =frm> ");
out.println( " <input type = text name = message> ");
out.println( " <input type=submit value = '发送 '> ");
out.println( " </form> ");
out.println( " </body> ");
out.println( " </html> ");
}

//Process the HTTP Post request
public void doPost(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
doGet(request, response);
}

//Clean up resources
public void destroy() {
}
}
就这样

[解决办法]
这样你把信息倒过来输出不就解决了吗~~~!!!


对吧
[解决办法]
看看行不 不行 我把我做的聊天发给你啊 我 QQ596660770
[解决办法]
晕,这还不简单,把它倒过来,从上往下显示不就行了。

热点排行