日期:2014-05-16  浏览次数:20517 次

DWR简单 实现单向聊天【文章二:页面显示】 功能登录显示登录用户【无数据库操作】
jsp(显示层代码块)如下: index.jsp页面代码块:如下 :
index页面:
<script type="text/javascript" src="/dwr-comet/js/jquery/jquery-1.2.6.pack.js"></script>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<script type='text/javascript' src='/dwr-comet/dwr/interface/myjs.js'></script>
<script type='text/javascript' src='/dwr-comet/dwr/engine.js'></script>
<script type='text/javascript' src='/dwr-comet/dwr/util.js'></script>


<a href="javascript:void(0)" onclick="window.open('chat.jsp','','width=300px;heigth=200px;')">去聊天</a>


chart页面:
<script type="text/javascript" src="/dwr-comet/js/jquery/jquery-1.2.6.pack.js"></script>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<script type='text/javascript' src='/dwr-comet/dwr/interface/myjs.js'></script>
<script type='text/javascript' src='/dwr-comet/dwr/engine.js'></script>
<script type='text/javascript' src='/dwr-comet/dwr/util.js'></script>



<body onload="dwr.engine.setActiveReverseAjax(true);"><br><br></body>

登陆:<input type=text id=username name=username value="${username}"> <input type=button value="登陆" onclick="login()"> <span id="loginmsg"></span><br>
用户列表:<select name="users" id="users">
        </select>
内容:<input type=text name=text id="text">
<input type=button value="发送" onclick="send()">        

<div id="msg"  style="height:200px; border:2px solid green;width:300px;overflow-y:auto;">
</div>

<script>
   function login()
   {
      var from = jQuery("#username").val();
      if (from=="")
        {
          alert("请输入用户名");
          retun;
        }
      myjs.login(jQuery("#username").val(),function(x){
         
         if (!x)
            document.getElementById("loginmsg").innerHTML = "登陆成功";
         else 
            document.getElementById("loginmsg").innerHTML = "用户已在别处登陆";
 
      });
   }
  
   //添加用户列表
   function addUser(arry)
   {
     var from = jQuery("#username").val();
     if (jQuery.trim(from)=="" || arry.length==0)
        return;
     dwr.util.removeAllOptions("users");
	 dwr.util.addOptions("users", arry,"id","name");
   }
   
    //发送
   function send()
   {
      var from = jQuery("#username").val();
      var toId = jQuery("#users").val();
      var toName = jQuery("#users>option:selected").html();
      var msg    = jQuery("#text").val();
      var time   = new Date();
      myjs.sendMsg(toId,toName,msg,function(x){
          if (x)
           {
              var mm = document.getElementById("msg");
		      var f = document.createElement("div");
		      f.innerHTML = "<font color=red>("+time.toLocaleString()+")"+from+"对"+toName+"说:"+
		      ")</font><br>";
		      mm.appendChild(f);
		      
		      var m = document.createElement("div");
		      m.innerHTML = msg+"<br><br>";
		      mm.appendChild(m);
           }
          
      });
   }
   
   //接收消息
   function recv(from,to,msg,time)
   {
      var mm = document.getElementById("msg");
      var f = document.createElement("div");
      f.innerHTML = "<font color=red>"+time.toLocaleString()+from+"对"+to+"说"+
      "</font><br>";
      mm.appendChild(f);
      
      var m = document.createElement("div");
      m.innerHTML = msg+"<br><br>";
      mm.appendChild(m);
   }
   
   //退出事件
   window.onbeforeunload = function(){
       jQuery.post("ExitGameServlet");
   }
  
   
</script> 
1 楼 wukele 2011-02-21  
代码排版下