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

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>
(0)

相关推荐

  • 关于Ajax技术中servlet末尾的输出流

    Ajax的服务器端用PrintWriter out=resp.getWriter()来响应数据的时候,out.print(0).out.print(1)来表示成功或失败,而不用out.write是有原因的,首先来看一下print和write两者的异同点. 共同点是:两者都不刷新页面,只在原来的页面写数据.最终都是重写了抽象类Writer里面的write方法. 区别是:print方法可以将各种类型的数据转换成字符串的形式输出.而重载的write方法只能输出字符.字符数组.字符串等与字符相关的数据.

  • jQuery Ajax传值到Servlet出现乱码问题的解决方法

    最近在学jquery ui,在做一个小功能的时候需要将前台的值获取到,通过Ajax传递给Servlet,然后再在返回数据结果,但是在Servlet接受参数的时候,通过后台打印,发现接受乱码,代码示例如下: public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/ht

  • js调用后台servlet方法实例

    1.使用document.form.action方式 相关源码如下: *.js [javascript] 复制代码 代码如下: <span style="white-space:pre">  </span> document.getElementById("sendPerson").value = SendPerson;  document.getElementById("currentTime").value = cur

  • Servlet+Ajax实现智能搜索框智能提示功能

    利用无刷新技术智能变换搜索框的提示,同百度搜索 效果图 其基本原理: 1.给搜索框编写js绑定事件onkeyup(键盘输入时).onfocus(当鼠标点击搜索框外的时候清空提示) 2.首先获得用户输入.之后将获得的数据传给服务器,服务器将数据传给后台,后台获取服务器传来的数据进行处理,得到关联数据,向前端返回json格式,前端通过回调函数,将返回来的json解析成文本,将文本传输到搜索框下方的展示窗 如下为支持json的jar包 search.jsp <%@ page language="

  • Jquery+ajax+JAVA(servlet)实现下拉菜单异步取值

    首先来看工程结构图: 项目所需要的包,如下所示: JSP代码: <%@ page language="java" import="java.util.*" pageEncoding="GBK"%> <% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServe

  • JS请求servlet功能示例

    本文实例讲述了JS请求servlet的方法.分享给大家供大家参考,具体如下: 前端js代码: //创建ajax请求对象 var xmlHttp; function createXMLHttpRequest(){ if(window.ActiveXObject){ xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } else if(window.XMLHttpRequest){ xmlHttp = new XMLHttpRequest(

  • 实例解读Ajax与servlet交互的方法

    本文以实例形式剖析了Ajax与servlet的交互,并且代码中有较为详细的注释,以帮助大家阅读理解.具体的实现方法如下: 1.JavaScript部分 var req; /*通过异步传输XMLHTTP发送参数到ajaxServlet,返回符合条件的XML文档*/ var url; function getResult() { var f=document.getElementById("form_pub"); var key=f.s.options[f.s.selectedIndex]

  • Servlet 与 Ajax 交互一直报status=parsererror的解决办法

    原因:servlet 返回的数据不是 Json 格式 1.JS代码为: var jsonStr = {'clusterNum':2,'iterationNum':3,'runTimes':4}; $.ajax({ type: "post", //http://172.22.12.135:9000/Json.json url: "/LSHome/LSHome", dataType : 'json', data : jsonStr, success: function(

  • 深入Ajax代理的Java Servlet的实现详解

    代码如下所示: 复制代码 代码如下: import java.io.IOException;import java.io.InputStream;import java.net.URL;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.ServletOutputStream;import javax.servlet.http.HttpServlet;impor

  • Ajax+Servlet+jsp显示搜索效果

    一.Ajax简介 Ajax被认为是(Asynchronous JavaScript and XML)的缩写,允许浏览器与服务器通信而无需刷新当前的页面的技术都被叫做Ajax eg:百度搜索.实时地图.etc,在Ajax模型中,数据在客户端与服务器之间独立传输,服务器用不刷新整个页面便可更新数据: 二.Ajax的工作原理图 三.Ajax发送和接收相应的方法 1.发送请求相应的方法 1).onreadystatechange事件处理函数:该函数由服务器触发而不是用户,每次readyState属性的改

随机推荐