`
小网客
  • 浏览: 1247459 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

原生Ajax应用之POST请求

 
阅读更多

1.封装ajax服务,ajax的url post提交,返回text数据:

 function ajaxService(url){
	//生成xmlhttpRequest实例
	var xmlhttp=null;
	if(window.XMLHttpRequest){ //Mozilla 浏览器
	   xmlhttp = new XMLHttpRequest();
	   if(xmlhttp.overrideMimeType){//设置MiME类别
	   	xmlhttp.overrideMimeType('text/xml');
	   }
	}else if(window.ActiveXObject){ // IE浏览器
	   try {
	    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	   } catch (e) {
	    try {
	     xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	    } catch (e) {}
	   }
	 }
	 if (!xmlhttp) { // 异常,创建对象实例失败
	   window.alert("你使用的浏览器有问题!!");
	   return false;
	  }
	//post提交url
	xmlhttp.open("post",url, false);
	xmlhttp.send();
	//判断连接状态,如果不是200那么连接出错
	if(xmlhttp.status!=200){
		//网络存在问题
		alert("网络存在问题,请检查网络!");
		return false;
	}
	//得到url数据
	dom=xmlhttp.responseText;
	return dom;
}

 2.具体的业务操作,通过学号得到学生的相关信息:

function  getXsInf(){
 	var xh=getObject('xh_getInf').value;
 	
 	var url="sz.kc_kcb.do?m=getStatus&flag=kcinf&xh="+xh;
 	var dom=ajaxService(url);
 	if(dom==null||dom==''){
 		return;
 	}
 	var all=dom.split('_GOOD_');
 }

 3.服务端处理应答,ajax访问后台的入口,通过flag来指定执行哪个方法:

public ModelAndView getStatus(HttpServletRequest request,HttpServletResponse response) {
    response.setContentType("text/xml; charset=gbk");
    response.setHeader("Cache-Control", "no-cache");
    //得到要执行的方法
    String flag=request.getParameter("flag");
    //得到课程信息
    if("kcinf".equals(flag)){
	this.getKcInf(request, response);
    }else if("getXsInf".equals(flag)){
	//通过学号得到学籍
	this.getXjByXh(request, response);
    }
	return null;
}

 4.后台的具体处理,通过课程号得到课程的相关信息,并以_GOOD_进行分割:

private void getKcInf(HttpServletRequest request,HttpServletResponse response){
	String kch=request.getParameter("kch");
	Kc_kcb kcb=this.kc_kcbService.queryById(kch);
	PrintWriter out=null;
	try {
		out=response.getWriter();
	} catch (IOException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
	if(out!=null){
		if(kcb!=null){
			if(logger.isDebugEnabled()){
				logger.debug("==================="+kcb.toString());
			}
			out.write((kcb.getKcm()==null?"":kcb.getKcm().trim()));
			out.write("_GOOD_");
			out.write((kcb.getFzjsh()==null?"":kcb.getFzjsh().trim()));
			
		}
		out.flush();
		//关闭流
		out.close();
	}
}

 

0
3
分享到:
评论

相关推荐

    原生javascript实现ajax 发送post请求

    原生javascript实现ajax发送pos请求,这样可以脱离jquery框架,

    原生ajax使用

    原生Ajax技术是Web开发中的一个关键组成部分,它允许开发者在不刷新整个页面的情况下与服务器进行异步数据交换。在JavaScript中,XMLHttpRequest对象是实现Ajax的核心,它提供了与服务器进行通信的能力。以下是对...

    原生ajax模拟判断用户名是否已注册

    在IT行业中,Ajax(Asynchronous JavaScript and XML)是...你可以通过查看这些文件来深入了解和学习如何在实际项目中应用原生Ajax进行用户注册验证。同时,确保在实际环境中考虑安全问题,比如防止SQL注入和XSS攻击。

    图书馆添加删除判断 ajax.get 请求 ajax.post响应 考试专用

    1. **图书添加**:在用户填写完图书信息并提交时,前端可以使用`$.ajax()`函数(jQuery库中的实现)或者原生JavaScript的`XMLHttpRequest`对象发起一个POST请求,将图书数据发送到后台服务器。服务器验证数据无误后...

    原生ajax代码实现异步提交

    原生Ajax技术是Web开发中的一个关键组成部分,它允许网页在不刷新整个页面的情况下与服务器进行数据交互,实现异步通信。在这个场景中,我们讨论的是如何使用原生JavaScript代码来实现一个简单的异步提交功能,例如...

    原生JS实现ajax与ajax的跨域请求实例

    对于GET请求,我们可以传入`null`,如果是POST请求,则可以传递数据。 ```javascript xhr.send(null); ``` 5. **检查请求状态**:在`onreadystatechange`事件中,我们可以通过`readyState`和`status`属性来判断...

    Js原生ajax与跨域(代理)上传文件

    这里,我们首先创建一个FormData对象,将用户选择的文件添加进去,然后开启一个POST请求,将FormData对象作为请求体发送。 当涉及到跨域上传文件时,可能会遇到预检请求(OPTIONS请求)的问题。这时,服务器还需要...

    原生 JS Ajax,GET和POST 请求实例代码

    这里我们将深入探讨原生JS中的Ajax GET和POST请求,并通过实例代码来理解它们的工作原理。 1. **创建XMLHttpRequest对象** 在JavaScript中,Ajax的核心是XMLHttpRequest对象,它提供了与服务器通信的能力。在上面...

    JavaScript案例-原生ajax

    "JavaScript案例-原生ajax"这个主题聚焦于如何不依赖任何库或框架,仅用JavaScript原生API实现Ajax通信。 Ajax的核心在于XMLHttpRequest对象,它允许我们在不刷新整个页面的情况下发送HTTP请求并接收响应。以下是...

    (免费)菜狗学前端之原生Ajax笔记

    ### 原生Ajax知识点详解 #### 一、原生Ajax概述 原生Ajax是一种使用JavaScript与服务器异步交互的技术,它允许网页在不重新加载整个页面的情况下与...通过这些知识点的学习,读者可以更好地理解并应用原生Ajax技术。

    Javascript原生ajax请求代码实例

    这里我们将深入探讨如何使用原生JavaScript实现一个简单的Ajax请求。 首先,我们需要创建一个名为`Ajax`的类,这个类将包含处理Ajax请求的所有必要方法和属性。在提供的代码实例中,`Ajax`类包含了以下关键组成部分...

    ajax请求后台数据实现分页功能

    - AJAX请求配置:使用jQuery的`.ajax()`或`.get()`、`.post()`方法,设置请求URL、类型(GET或POST)、携带的数据(如页码和每页数量),以及成功的回调函数。 2. **AJAX请求**: ```javascript $.ajax({ url: ...

    浅谈JS原生Ajax,GET和POST

    JavaScript中的AJAX(Asynchronous JavaScript and XML)技术是网页实现异步数据交换的关键,它允许在不刷新整个页面的情况下与服务器进行通信。...然而,了解原生AJAX的工作原理对于理解网络请求的底层机制非常重要。

    原生JS写Ajax的请求函数功能

    "ajax.get"和"ajax.post"是两个封装好的方法,分别用于发送GET和POST请求。它们对"ajax.send"进行了封装,简化了代码。"ajax.get"方法会将参数拼接为查询字符串,并添加到URL中。"ajax.post"方法会将数据拼接为...

    原生的Ajax技术,包含原生Ajax的所有常用的知识点

    以上就是关于原生Ajax技术的基本知识点,包括创建异步对象、发送请求、处理响应、以及与服务器端的交互。掌握这些内容,你就可以创建基本的Ajax应用,实现在不刷新页面的情况下与服务器进行数据交互。

    ajax跨域post(java例子)

    本篇文章将详细讲解如何使用Ajax进行跨域POST请求,并结合Java的Spring框架给出具体示例。 ### 1. 跨域请求的概念 跨域请求是指一个域下的文档或脚本尝试请求另一个域下的资源。出于安全考虑,浏览器默认禁止这种...

    JavaScript案例-原生ajax查询所有用户

    总结,这个“JavaScript案例-原生ajax查询所有用户”涉及到的主要知识点包括:XMLHttpRequest对象的创建与使用、AJAX请求的配置与发送、以及服务器端的数据处理和返回。了解和掌握这些,能够帮助开发者构建动态、...

    原生JavaScript实现Ajax异步请求

    在现代Web应用中,Ajax广泛用于实现数据的动态加载、表单的无刷新提交等功能,极大地提升了用户体验。 要使用原生JavaScript实现Ajax,首先需要创建一个`XMLHttpRequest`对象,这是Ajax的核心。在所有支持Ajax的...

Global site tag (gtag.js) - Google Analytics