`
summer_021
  • 浏览: 57999 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

Ajax_原生

阅读更多

	var xmlHttpRequest = null; //声明一个空对象以接收XMLHttpRequest对象
	
	function ajaxSubmit()
	{
		//如果不为null 或者不为 Undefined 就为true
		if(window.ActiveXObject) // IE浏览器,当初微软先在IE中非标准实现(ActiveX实现,ActiveX IE特有),后来其他浏览器用标准的方式实现
		{
			xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
		}
		else if(window.XMLHttpRequest) //除IE外的其他浏览器实现,window下面存在XMLHttpRequest对象. window的子对象
		{
			xmlHttpRequest = new XMLHttpRequest();
		}
		
		if(null != xmlHttpRequest)
		{
			var v1 = document.getElementById("value1ID").value;
			var v2 = document.getElementById("value2ID").value;
			//POST/GET请求,最好大写,与表单提交不一样     请求路径   true:异步提交
			xmlHttpRequest.open("POST", "ajax", true);//准备
			//关联好ajax的回调函数
			//xmlHttpRequest.onreadystatechange : 引用一个事件处理器
			//点一下执行四次,因为状态变化四次
			xmlHttpRequest.onreadystatechange = ajaxCallback;//回调,ajaxCallback:不能有括号:表示函数的引用,加了括号表示函数的执行

			//真正向服务器端发送数据
			//设置表单提交方式:"Content-Type","application/x-www-form-urlencoded"
			xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
			xmlHttpRequest.send("v1=" + v1 + "&v2=" + v2);//POST提交要附加参数
		}
	}
	
	function ajaxCallback()
	{
		if(xmlHttpRequest.readyState == 4)//1 2 3 4 四种状态
		{
			if(xmlHttpRequest.status == 200)//正常响应
			{
				var responseText = xmlHttpRequest.responseText;//服务器回传文本
				
				document.getElementById("div1").innerHTML = responseText;
			}
		}
	}


<input type="button" value="get content from server" onclick="ajaxSubmit();"><br>
    <input type="text" name="value1" id="value1ID"><br>
    <input type="text" name="value2" id="value2ID"><br>
    <div id="div1"></div>




GET情况:

var xmlHttpRequest = null; //声明一个空对象以接收XMLHttpRequest对象
	
	function ajaxSubmit()
	{
		//如果不为null 或者 Undefined 就为true
		if(window.ActiveXObject) // IE浏览器,当初微软先在IE中非标准实现(ActiveX实现,ActiveX IE特有),后来其他浏览器用标准的方式实现
		{
			xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
		}
		else if(window.XMLHttpRequest) //除IE外的其他浏览器实现,window下面存在XMLHttpRequest对象. window的子对象
		{
			xmlHttpRequest = new XMLHttpRequest();
		}
		
		if(null != xmlHttpRequest)
		{
			//POST/GET请求,最好大写,与表单提交不一样     请求路径   true:异步提交
			xmlHttpRequest.open("GET", "ajax", true);//准备
			//关联好ajax的回调函数
			//xmlHttpRequest.onreadystatechange : 引用一个事件处理器
			//点一下执行四次,因为状态变化四次
			xmlHttpRequest.onreadystatechange = ajaxCallback;//回调,ajaxCallback:不能有括号:表示函数的引用,加了括号表示函数的执行
			//真正向服务器端发送数据
			xmlHttpRequest.setRequestHeader("pragma","no-cache");
			xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
			xmlHttpRequest.send(null);//如果GET请求 则不用附加参数
			
		}
	}
	
	function ajaxCallback()
	{
		if(xmlHttpRequest.readyState == 4)//1 2 3 4 四种状态
		{
			if(xmlHttpRequest.status == 200)//正常响应
			{
				var responseText = xmlHttpRequest.responseText;//服务器回传文本
				
				document.getElementById("div1").innerHTML = responseText;
			}
		}
	}

<input type="button" value="get content from server" onclick="ajaxSubmit();"><br>
    <input type="text" name="value1" id="value1ID"><br>
    <input type="text" name="value2" id="value2ID"><br>
    <div id="div1"></div>


protected void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		PrintWriter out = resp.getWriter();
		out.print("HELLO FROM SERVER,GET 提交");
		out.flush();
		out.close();
	}

	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		process(req, resp);
	}

	private void process(HttpServletRequest req, HttpServletResponse resp)
			throws IOException {
		String v1 = req.getParameter("v1");
		String v2 = req.getParameter("v2");
		System.out.println("v1=" + v1 + ", v2=" + v2);
		String v3 = String.valueOf(Integer.valueOf(v1) + Integer.valueOf(v2));

		PrintWriter out = resp.getWriter();
		resp.setHeader("pragma", "no-cache");
		resp.setHeader("cache-control", "no-cache");
		out.println(v3);
		out.flush();
		out.close();
	}

分享到:
评论

相关推荐

    ajax_example.rar_ajax_ajax html_html ajax

    HTML页面可能包含JavaScript代码,用于处理用户的交互,并使用Ajax库(如jQuery的$.ajax或原生XMLHttpRequest对象)来发送异步请求。在这个例子中,HTML页面可能有一个按钮,当用户点击时,它会触发一个函数,该函数...

    ajax_init_javascript_ajax_

    "ajax_init_javascript_ajax_"这个标题暗示我们将讨论一个用JavaScript原生方法封装的Ajax函数,这对于高效地构建动态交互的网站至关重要。通过这个封装,开发者可以更方便地调用Ajax请求,处理服务器返回的数据,...

    spring_mvc_ajax.zip_SpringMVC ajax_SpringMVC+ajax_spring ajax_sp

    1. **设置Ajax请求**:在客户端,使用JavaScript库如jQuery的`$.ajax()`方法或原生的XMLHttpRequest对象创建一个Ajax请求。指定URL(通常是SpringMVC的Controller处理方法)、HTTP方法(GET或POST)、数据以及回调...

    ajax_server.jar

    之前是用 txt 文件模拟的 AJAX 服务器, 现在用 jar 包模拟原生 JS 的 AJAX 服务器。 打开 CMD,在对应目录下运行 java -jar ajax_server.jar 输入地址:http://localhost:8080/check?username=123 测试一下服务器...

    ajax_timer.

    使用原生的`XMLHttpRequest`对象创建AJAX请求,结合`setInterval()`创建定时器: ```javascript var xhr = new XMLHttpRequest(); var url = 'your_server_url'; xhr.onreadystatechange = function() { if (xhr....

    jsp-Ajax_Login_songxv7_jsp_

    3. **jQuery或原生JavaScript的Ajax函数**:在实际应用中,开发者通常会使用jQuery库简化Ajax调用,如`$.ajax()` 或 `$.post()`,或者使用原生JavaScript的`XMLHttpRequest`对象。这些方法可以配置请求类型(GET或...

    ajax_jar包

    7. **Ajax库和框架**:除了使用原生的XMLHttpRequest,开发者还经常使用jQuery、Prototype、dojo、AngularJS等库或框架,它们提供了更高级别的API,简化了Ajax的使用。 在实际开发中,使用"ajax_jar包"这样的库可以...

    AJAX_In_Action.rar

    7. **AJAX库与框架**:虽然可以通过原生JavaScript实现AJAX,但使用jQuery、axios、fetch等库或框架能简化开发过程,提升代码质量。了解这些库的API和用法是现代Web开发的必备技能。 8. **设计模式**:书中会介绍...

    JavaScript结合AJAX_stream实现流式显示

    需要特别注意的是,上述代码示例使用了JavaScript原生的AJAX操作。在现代Web开发中,也可以利用现代JavaScript框架或者库,如jQuery、axios等,它们为AJAX操作提供了更加简洁和强大的API,而且很多库已经封装好了...

    php_ajax_三级下拉联动

    在实现过程中,前端可能使用jQuery或者原生JavaScript编写AJAX代码。jQuery简化了DOM操作和AJAX调用,使得代码更简洁易懂。而原生JavaScript则提供了更多的控制权,可以更好地定制功能。 一个典型的流程可能是这样...

    Ajax_001【返回String类型】

    Ajax,全称Asynchronous ...总的来说,Ajax_001【返回String类型】的知识点涵盖了如何使用原生JavaScript进行Ajax请求,以及如何处理返回的字符串数据。了解并熟练掌握这一技术,将有助于提升Web应用的交互性和性能。

    Telerik Radcontrols For ASP.NET AJAX 2010_1_309_dev

    通过内置的AJAX支持,RadControls能够实现无刷新页面更新,提供接近原生应用级别的用户体验。同时,还支持多种交互效果,如拖放操作、动态加载等,进一步提升了用户的满意度。 #### 4. 完善的技术支持 Telerik公司...

    ajax_photo

    首先,理解Ajax的核心在于XMLHttpRequest对象,它是JavaScript原生提供的一个对象,用于在后台与服务器端通信。在Ajax.NET中,这个对象被封装得更为友好,使得开发者能更方便地进行异步操作。在“ajax_photo”中,这...

    my-ajax-imitate-jq_ajax_JQ_

    下面我们将深入讲解如何封装原生的XMLHttpRequest对象来实现这一目标。 1. **创建自定义函数** 首先,我们需要定义一个函数,例如我们可以命名为`myAjax`。这个函数应该接受与$.ajax()类似的参数,如URL、type...

    JqueryAjax_and_JS_ajax

    原生 JavaScript 实现 AJAX 要复杂一些,但能提供更多的控制权。核心是 `XMLHttpRequest` 对象。 1. **创建 XMLHttpRequest 对象**: ```javascript var xhr = new XMLHttpRequest(); ``` 2. **配置请求**: ```...

    my_ajax_note

    ### Ajax的多重实现方法 #### 一、JSON详解 ##### 1. 什么是JSON JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它是一种基于JavaScript的一个...

    java_ajax_json的使用

    JSON2.js是一个JavaScript库,由Douglas Crockford创建,用于确保在所有浏览器中支持JSON对象,特别是较旧的浏览器,它们可能不原生支持JSON解析和序列化。 在Java中,使用Ajax与服务器进行通信通常涉及到以下步骤...

    使用_jQuery_简化_Ajax_开发.txt

    在 jQuery 出现之前,前端开发者需要编写大量的原生 JavaScript 代码来实现网页中的动态效果,这不仅增加了代码的复杂度,还容易出现兼容性问题。而 jQuery 提供了一套简洁易用的 API 接口,使得开发者能够轻松地...

    Ajax_For_Dummies.pdf

    这一特性极大地改善了用户体验,并使得现代Web应用能够拥有接近原生应用的流畅性和响应速度。 ### 为什么学习Ajax? 1. **提高用户体验**:Ajax能够使用户无需等待页面刷新即可看到操作结果,显著提升网站的互动性...

    Ajax_xml数据格式

    JSON是JavaScript原生数据格式,与JavaScript对象直接对应,因此解析和序列化都非常方便。 总结,Ajax和XML在早期Web开发中起到了重要作用,但随着技术的发展,JSON等其他数据格式的出现,XML在Ajax应用中的使用...

Global site tag (gtag.js) - Google Analytics