Ajax

$.ajax({type:"post",url : "SystemPlay",data: {"minename":minename,"devicename":devicename},dataType:"html",success:function(result){
            $("#but").html(result);
        }});

type 是提交到servlet的post方法  url是提交到那个servlet这个是配置在web.xml中 data是传递的参数  datatype是返回参数类型  result是printWrith返回的数据

$.post("HlsView?minename="+minename,function(data){
            layui.tree({
                  elem: '#demo', //传入元素选择器
                  skin:"shihuang"
                  ,nodes: data
                  ,click: function(node){
                      if(node.url_name!="")
                          only_play(node.url_name,node.url_ip);
                      }
                });    
        },"json");

post类似  这里用到了Layui框架不用在意  返回的是json数据

 

用到Ajax有时会出现加载的问题   也就是动态生成的ip加载页面时无法获取下面这个方法可以

("#but").ajaxComplete(function(){ //待请求完成时 执行 
        if($("#play_one").val()==1){
            $("#content").children().removeClass();
            $("#but").addClass("left");
            $("#player").addClass("new_player_class");
            $("#clo_but").addClass("new_clo_but_class");
        }
        add_play("#play_one");
        });

当ID为but的元素加载完毕时再调用其中动态生成的元素就是了  这个可以配合最上面AJAX看

Ajax传递参数还会有个问题  就是有时候java后台无法识别  这时候需要加密后传输 java再解密  通常出现在汉字传递的时候  还有IE浏览器有时候会这样

var minename=getQueryString('minename');
minename=encodeURI(encodeURI(minename));

这是获取页面参数后加密

String name=request.getParameter("minename");//获取页面请求
name= URLDecoder.decode(name, "UTF-8");

这是后台java接受参数后解密

posted on 2016-12-08 12:49  取个名字之麻烦  阅读(205)  评论(0)    收藏  举报