探讨.get .post .ajax ztree 还有后台servlet传递数据的相关知识

前端技术 2023/09/02 AJAX

servlet给前台传递data串

用的方法是

PrintWriter out = response.getWriter();
    // response.sendRedirect(\"test.jsp\");
    String s = \"[{\'id\':\'1\', \'pId\':\'0\', \'name\':\'test1\'},{\'id\':\'11\', \'pId\':\'1\', \'name\':\'test11\'}, {\'id\':\'12\', \'pId\':\'1\', \'name\':\'test12\'}, {\'id\':\'111\', \'pId\':\'11\', \'name\':\'test111\'},]\";
    out.write(s);

----------------------

关于.get .post .ajax的浅显的理解是

最后一个是异步的,前面两个是同步的(阻塞的)

.get(url,data,function(data,status){
执行的函数
//我理解的data和url参数的意思是一样的
})

-------------------------

ztree的使用:

注意ztree两种json的格式的区别,经常使用的是简单的格式是,直接通过数据之间的关系显示树的结构

第二种是通过的是json的潜逃实现的

注意的是样式和js文件必须是引入全的然后是界面上的位置是ul

然后是

//注意的话是传递response传递回来的类型是string,这是string转换对象的方法
var ss = eval(\"(\" + data + \")\");
        var t = $(\"#test\");
//然后是树控的初始化(位置,配置,数据)
        t = $.fn.zTree.init(t, setting, ss);
//取得树对象然后操作
var zTree = $.fn.zTree.getZTreeObj(\"test\");

收集整理,关于后台的数据传往前台的问题解决

关于

.get替换成

.ajax
 $(\"button\").click(function(){
 $.get(\"demo_ajax_load.txt\", function(result){
  $(\"div\").html(result);
 });
});------------ $.ajax({ url: url, data: data, success: success, dataType: dataType }); 

ps:AJAX使用POST方法向后台Servlet传递数据的方法

<script type=\"text/javascript\">
 //统计资源访问次数的脚本
 //定义XMLHttpRequest对象
 var http_request=false;
 function send_request(url,rewriteUrl){
   http_request=false;
   //开始初始化XMLHttpRequest对象
   if(window.XMLHttpRequest){//Mozilla等浏览器初始化XMLHttpRequest过程
     http_request=new XMLHttpRequest();
     //有些版本的Mozilla浏览器处理服务器返回的未包含XML mime-type头部信息的内容时会出错.
     //因此,要确保返回的内容包含text/xml信息.
     if(http_request.overrideMimeType){
       http_request.overrideMimeType(\"text/xml\");
     }
   }
   else if(window.ActiveXObject){//IE浏览器初始化XMLHttpRequest过程
     try{
       http_request=new ActiveXObject(\"Msxml2.XMLHTTP\");
     }
     catch(e){
       try{
         http_request=new ActiveXObject(\"Microsoft.XMLHTTP\");
       }
       catch(e){}
     }
   }
   //异常,创建对象失败
   if(!http_request){
     window.alert(\"不能创建XMLHttpRequest对象实例!\");
     return false;
   }
   //指定响应处理函数
   http_request.onreadystatechange=processRequest;
   //发送HTTP请求信息
   http_request.open(\"POST\",url,true);
   http_request.setRequestHeader(\"Content-Type\",\"application/x-www-form-urlencoded\");
   //将参数放到这里,后台servlet可以用request.getParameter()方法取到这些参数
   http_request.send(\"rewriteUrl=\" + rewriteUrl\"&rewriteUrl2=\" + rewriteUrl2);
 }
 //处理返回信息函数
 function processRequest(){
   //判断对象状态
   if(http_request.readyState==4){
     //判断HTTP状态码
     if(http_request.status==200){
       //信息已经成功返回,无动作
     }
     else {
       //请求页面有问题
       alert(\"您所请求的页面有异常!错误状态:\"+http_request.status);
     }
   }
 }
 function dosearch(rewriteUrl){
  send_request(\"http://127.0.0.1:8000/); //这里的rewriteUrl就是页面上放置的资源经过重写后的链接
 }
//统计资源访问次数的JS——end
</script>

另外,页面上放置重写地址的元素需要调用上面的dosearch(rewriteUrl)方法,将重写后的链接当作参数传递给这个方法,例如:

<a href=\"http://127.0.0.1:8000/iras50/rewriter/CNKI/\" target=\"_blank\" onclick=\"dosearch(\'http://127.0.0.1:8000/iras50/rewriter/CNKI/\');\">中国知网</a>

本文地址:https://www.stayed.cn/item/3942

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。