本文主要介绍了prototype.js简单实现ajax功能,结合实例形式分析了prototype.js前台实现ajax与后台struts的相关操作技巧,需要的朋友可以参考下,希望能帮助到大家。
原本不知道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;
}
简单的打印.
javascript的ajax功能的概念和示例
基于jquery的ajax功能实现web service的json转化_jquery
jquery内置的ajax功能和json的使用实例_jquery
以上就是实例详解prototype.js简单实现ajax功能的详细内容。