ajax 原生态和jquery封装区别

一、原生态

var xmlHttp = false;
try{
	if( xmlHttp && xmlHttp.readyState != 0 ){
	    xmlHttp.abort();
         }
	if (!xmlHttp){
	    xmlHttp = getXMLHTTPObj();
	}
	if(xmlHttp){
	    var url = "pages/overlapanalysis_PostResult.jsp?dkName="+dkName+"&annlysisBusinessType="+annlysisBusinessType
				           +"&coordString="+coordString+"&mapID="+mapID+"&phyLayerID="+phyLayerID+"&phyLayerName="+phyLayerName
						   +"&fldNames="+fldNames+"&whereSql="+whereSql;
	    xmlHttp.open("POST",encodeURI(encodeURI(url)) , true);
	    xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	    xmlHttp.setRequestHeader("Content-Type","text/xml;charset=GBK");
	   //设置回调函数
	   xmlHttp.onreadystatechange = function () {
	      try{
		if (xmlHttp.readyState == 1){
		    window.status = "叠加分析中......";
		}else if (xmlHttp.readyState == 2){
		    window.status = "叠加分析完毕";
		}else if (xmlHttp.readyState == 3){
		    window.status = "叠加分析完毕.";
		}else if (xmlHttp.readyState == 4){
		    window.status = "叠加分析完毕.";
		    var retStr = xmlHttp.responseText;
		    document.getElementById("data_txt").value = retStr;
		}
		}catch (e){
		    alert("数据加载失败!:" + e);
		}
	}
	xmlHttp.send(null);
	}else{
	    alert("XMLHTTP对象创建失败");
	 }
	}catch (e){
	    alert("数据加载失败!:" + e);
}

 //创建XMLHTTP对象
function getXMLHTTPObj(){
		  var obj = null;
		  try{
			  obj = new ActiveXObject("Msxml2.XMLHTTP");
		  }catch(e){
		try{
			obj = new ActiveXObject("Microsoft.XMLHTTP");
		}catch(sc){
			obj = null;
			alert(‘创建XMLHTTP对象失败!‘);
		}
	  }
	 if( !obj && typeof XMLHttpRequest != "undefined" ){  //not Microsoft Integer Explorer
		 obj = new XMLHttpRequest();
	 }
	 return obj;
}
$.ajax({
           url:"pages/overlapanalysis_PostResult.jsp",
           type:"post",
           data:"dkName="+dkName+"&annlysisBusinessType="+annlysisBusinessType
				           +"&coordString="+coordStr+"&mapID="+mapID+"&phyLayerID="+phyLayerID+"&phyLayerName="+phyLayerName
						   +"&fldNames="+fldNames+"&whereSql="+whereSql,
           async : true, //默认为true 异步
		   dataType:"html",
           error:function(){
               alert("叠加分析失败");
           },
           success:function(data){
               setAttributeValuestt(layerType,coordStr,data);
           }
    });

当使用的参数较多且有的参数过长时建议使用jquery的,使用原生态的可以会截掉部分传递的参数(如coordStr是很多坐标串可能就会失败)。

时间: 2024-08-10 01:51:06

ajax 原生态和jquery封装区别的相关文章

Jquery封装ajax

? Load方法 ????<!-- 将jquery.js导入进来 --> ????<script type="text/javascript" src="js/jquery-1.7.2.js"></script> ????<script type="text/javascript"> ????$(function(){ ????????$("a").click(function(

javascript 学习小结 (三) jQuery封装ajax尝试 by FungLeo

javascript 学习小结 (三) jQuery封装ajax尝试 by FungLeo 前言 在JS学习中,对于原生的很多东西我理解得并不透彻.但是使用jQuery来操作DOM,基本上还是非常熟练的.但是对于AJAX数据交互的处理,我不是很理解. 近期团队交给我一个后端全接口提供给我的项目.我要利用这些接口来自己组织前端代码.为了学习,我决定不使用VUE或者其他的前端框架来做.而是只使用jQuery框架,数据的部分全部使用拼接字符串的形式实现. 获取数据,显示数据,提交数据. 在这个项目中(

jQuery封装的ajax操作

jQuery中ajax请求有三种操作方式$.get() $.post() $.ajax() get和post(是对$.ajax的封装) //不传递数据 $.get("./16.php",function(msg){ alert(msg); }); //给服务器传递数据 $.get("./16.php",{name:'tom',age:23},function(msg){ alert(msg); }); //用法与get方法类似 $.post("./16.p

原生JS模拟JQuery封装Ajax

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" con

Ajax学习笔记-JQuery中的Ajax

JQuery对Ajax操作进行了封装,在JQuery的最底层的方法是$.ajax(),第二层是load() $.get() $.post(), 第三层是$.getScript()和$.getJSON(). <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> <script type=&quo

AJAX 原生态

                                                               AJAX   原生态 原生态AJAX详解和jquery对AJAX的封装 AJAX: A :Asynchronous [eI`sinkrenes] 异步 J :JavaScript    JavaScript脚本语言 A: And X :XML 可扩展标记语言 AJAX现在貌似已经无处不在了,其实自从web2.0的广泛发展带来了AJAX的发展.我们目前的客户端可以分为胖客户

ajx技术解析以及模拟jQuery封装

1.后台处理程序 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <% String username = request.getParameter("username"); String password = request.getParameter("password&q

js 实现对ajax请求面向对象的封装

AJAX 是一种用于创建快速动态网页的技术.通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. 在js中使用ajax请求一般包含三个步骤: 1.创建XMLHttp对象 2.发送请求:包括打开链接.发送请求 3.处理响应 在不使用任何的js框架的情况下,要想使用ajax,可能需要向下面一样进行代码的编写 var xmlHttp = xmlHttpCreate();//创建对象 xmlHttp.onreadysta

jQuery 封装、插件浅析

今天小码哥突发兴致想学习jQuery.当正在研究一个不错的插件的时候,又突然有了一个疑问,那就是为啥很多大拿前辈们在封装自己写的插件的时候总是按照这个格式:如;(function($){})(jQuery);.或者是这样定义方法对象的?如:$.fn.add=function(){}啥的!!尤其是后一个$.fn中的fn是干什么的?(大家不要笑俺,,,小码哥也是初学者,还有很多没有达到深刻理解的境界.)因此,偶就上网借鉴了一下别人总结的,然后又加上俺自己的理解,成就了一下的一片博文! 大家都晓得,j