prototype.js实现AJAX小例子

  原本不知道prototype.js是一个框架,只当其是一个再普通不过的JS文件.随手拿着用了用,写了一个JSP页面,单纯的用prototype.js来实现AJAX效果.用了之后发现超好用,自己再也不用写那么大一堆代码了,哦耶.言归正传,还是把今天写的那个小代码发上来.
一.JSP部分
     这部分的代码,最为关键的是JS部分的改变.没有采用prototype.js的时候,生成一个AJAX效果,起码得有四大段.现在,只用写成下面这一小段代码了.
  
< script type = " text/javascript " >
function  getnodelist() {
      
function onSuccess(request)
    
{    
           alert(
"success");
          $(
"result").innerHTML = "abc"+request.responseText ;
   }

        
    
function onComplete(request){
    }

        
     
function onFailure(request){
          alert(
"failure");
         $(
"result").innerHTML = request.responseText ;
    }

        
    
var paras = "" ;
        
    
var ajax = new Ajax.Request(
          
"http://localhost:8080/LoginDemo/test.do"
       
{
    method: 
'post'
    parameters:paras ,
    onSuccess: onSuccess,
    onComplete:onComplete,
    onFailure:onFailure
      }

  );
}

</ script >
  其中最重要的就是这一段了:
  var ajax = new Ajax.Request(     //新生成一个AJAX.Request对象.
  " http://localhost:8080/LoginDemo/test.do",  //请求的servlet地址.即URL  
  {                                                               //参数
   method: 'post',
   parameters:paras ,
   onSuccess: onSuccess,              //这些函数和上面三个函数相对应.
   onComplete:onComplete,
   onFailure:onFailure
  });
注明:,里面的URL要么写成绝对路径,要么就在前面取<% String path = request.getContextPath();%>,然后在这里
"<%=path%>/test.do"
 prototype.js让我觉得最方便的地方就在于我不用自己去判断当前浏览器的状态,如果成功了就调用OnSuccess
函数,失败就调用onFailure函数,而我只用关注于成功失败之后该怎么处理,简化了程序.
二.后台struts部分.
public  ActionForward execute(
        ActionMapping mapping,
        ActionForm form,
        HttpServletRequest request,
        HttpServletResponse response) 
{

        
// TODO Auto-generated method stub
        try{
            System.out.println(
"in action");
          response.setContentType(
"text/html;charset=gb2312");
            ServletOutputStream out 
= response.getOutputStream();
            out.print(
"hello slf!");
            System.out.println(
"out");
        }
catch(Exception e)
        
{
            e.printStackTrace();
        }

        
return null;
    }

  简单的打印.

关于prototype.js在网上有好多资料,感觉很有深度可以挖,又有得学了哦~

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值