jquery中的ajax应用

来源:互联网 发布:淘宝怎么删除追加评论 编辑:程序博客网 时间:2024/05/01 11:31

jquery中的ajax应用

jquery手册中还需要去了解

function checkname(obj){  var val = obj.value;   var url ="AjaxServlet.do";    var param={uname:'张三2',tA:23};  //传对象    var data= "data="+"123";              //传字符串    var data2 ="data="+"123"+"&data2="+"456";  //传多个参数   $.ajax({                 url: url,   // 请求路径                 type: "POST",  //提交方式                 dataType:'text', //获取数据类型,还可以是json、xml                 cache:false,    //是否缓存                 async:false,    //是否异步   true(异步)或 false(同步)                 data:param,      //传入的参数                 beforeSend:function(){  //请求发送之前触发,                  alert("我要出发啦。。。。");                 },                 success:function(data){  //请求成功后返回的数据                   alert("jquery==="+data);                   data = eval("(" + data +")" );  //对获取到的数据进行处理,通过eval()转化成js数组                   alert("eval==="+data);                     alert(data.userA.name);                 }   }); }
当 dataType:’text’,时

servlet 只需将数据放入流中即可

              resp.setContentType("text/html"); //必须加上              PrintWriter out =  resp.getWriter();              out.write("传入的值,一般为字符串");              out.flush();              out.close();
当 dataType:’json’,时

在servlet中需要将数据转化为json,在放入流中
手动转换为json格式

//          String jsonStr="{'name':'张三','upw':'123','age':'23','sex':'女'}";//              User user = new User("张三", "123", 12, "男");//              String jsonStr="{\"uname\": \""+ user.getName()+"\",\"age\":\""+user.getAge()+"\"}";//                  resp.setContentType("text/html");//                  PrintWriter out =  resp.getWriter();//                  out.write(jsonStr);//                  out.flush();//                  out.close();

自动转换为json

public static String transToJsonStr(Object obj){         ObjectMapper mapper = new ObjectMapper();      //     mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); //表示自动去掉值为null的         StringWriter sw = new StringWriter();         String strJson = null ;         try {            mapper.writeValue(sw, obj);            strJson = sw.toString();        } catch (JsonGenerationException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } catch (JsonMappingException e) {            // TODO Auto-generated catch block            e.printStackTrace();        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }        return strJson ;    }    public static void outJsonStrAndColse(HttpServletResponse resp,String jsonStr){        resp.setCharacterEncoding("utf-8");        resp.setContentType("text/html");        PrintWriter out;        try {            out = resp.getWriter();            out.write(jsonStr);            out.flush();            out.close();        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }    }
 User userA = new User("张三a", "123", 12, "男");              User userB = new User("张三b", "123", 122, "女");              List list  = new  ArrayList<User>();              list.add(userA);              list.add(userB);              String jsonstr = JsonUtil.transToJsonStr(list);              JsonUtil.outJsonStrAndColse(resp, jsonstr);
1 0
原创粉丝点击