首先我们来常见的Jquery式的Ajax写法,以及在java后台的取值

 /**
*AJAX
*/
function showLastTime(){
var facilityId = $('*[name="facilityId"]').val(); //页面取值
var mainteType = $("#mainteType").val();
var mainteWorkNm = $("#mainteWorkNm").val();
var url = AP_BASE_URL + "c412s/showLastYmd/"; //url的生成
if(facilityId !=""&&mainteType !=""&&mainteWorkNm !=""){
$.ajax({
async:false, //false为同步(用户需要等待刷新完才能操作),true为异步(不需要等待,可以进行其他操作)
url: url, //请求的URL
type: 'POST', //两种方式POST和GET,POST方式为隐形传输,GET会将所传参数和值拼写在url中(推荐POST)
data: {
//以下为所需传递的参数
'facilityId':facilityId,
'mainteTypeCd':mainteType,
'mainteWorkId':mainteWorkNm
},
//cache: false,
error: function(XMLHttpRequest, textStatus, errorThrown){
ajaxError(XMLHttpRequest, textStatus, errorThrown);
},
success: function(data) { //data为后台传回的数据
$(".info").html(data); //收到回传数据后执行的操作
}
});
}else{
$(".info").text("");
}
return false;
}

其次为普通JS的Ajax的写法

function showLastTime2(){
var mainteType = $("#mainteType").val();
var mainteWorkNm = $("#mainteWorkNm").val();
var facilityId = $('*[name="facilityId"]').val();
var url = AP_BASE_URL + "c412s/showLastYmd2/";
var xmlhttp;
//创建XMLHttpRequest 对象
if (window.XMLHttpRequest){ // code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}else{ // code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
if(facilityId !=""&&mainteType !=""&&mainteWorkNm !=""){
xmlhttp.open("POST",url,false); //向服务器发送请求,false为同步(用户需要等待刷新完才能操作),true为异步(不需要等待,可以进行其他操作)
xmlhttp.setRequestHeader("CONTENT-TYPE", "application/x-www-form-urlencoded"); //如果使用POST方式必须添加该行代码,向请求添加 HTTP 头
xmlhttp.send("mainteTypeCd="+mainteType+"&mainteWorkId="+mainteWorkNm+"&facilityId="+facilityId); //传参
xmlhttp.onreadystatechange=function(){ //如果服务器状态改变触发事件
if(xmlhttp.readyState==4 && xmlhttp.status==200){ //不懂查看下表,大意为在请求完成并且状态为OK时
$(".info").html(xmlhttp.responseText); //xmlhttp.responseText为服务器传回的值
}
};
}else{
$(".info").text("");
}
属性 描述
onreadystatechange 存储函数(或函数名),每当 readyState 属性改变时,就会调用该函数。
readyState

存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。

  • 0: 请求未初始化
  • 1: 服务器连接已建立
  • 2: 请求已接收
  • 3: 请求处理中
  • 4: 请求已完成,且响应已就绪
status

200: "OK"

404: 未找到页面

后台Java代码取值

 public String showLastYmd2(HttpServletRequest request HttpServletResponse response){
request.getParameter("facilityId");
request.getParameter("mainteTypeCd");
request.getParameter("mainteWorkId");
response.write("data"); //传回参数
}

有关Ajax实现的两种方法的更多相关文章

  1. ajax后台请求两种方法(js和jQuery)

    (1)js的ajax var xmlHttp; if(window.XMLHttpRequest){ xmlHttp=new XMLHttpRequest(); }else{ xmlHttp=new ...

  2. ASP.NET MVC 实现AJAX跨域请求的两种方法

    通常发送AJAX请求都是在本域内完成的,也就是向本域内的某个URL发送请求,完成部分页面的刷新.但有的时候需要向其它域发送AJAX请求,完成数据的加载,例如Google. 在ASP.NET MVC 框 ...

  3. Ajax中解析Json的两种方法详解

    eval();  //此方法不推荐 JSON.parse();  //推荐方法 一.两种方法的区别 我们先初始化一个json格式的对象: var jsonDate = '{ "name&qu ...

  4. Ajax中解析Json的两种方法

    eval(); //此方法不推荐 JSON.parse(); //推荐方法 一.两种方法的区别 我们先初始化一个json格式的对象: var jsonDate = '{ "name" ...

  5. C# web api 返回类型设置为json的两种方法

    每次写博客,第一句话都是这样的:程序员很苦逼,除了会写程序,还得会写博客!当然,希望将来的一天,某位老板看到此博客,给你的程序员职工加点薪资吧!因为程序员的世界除了苦逼就是沉默.我眼中的程序员大多都不 ...

  6. jQuery插件开发的两种方法及$.fn.extend的详解(转)

    jQuery插件开发的两种方法及$.fn.extend的详解 jQuery插件开发分为两种:1 类级别.2 对象级别,下面为大家详细介绍下   jQuery插件开发分为两种: 1 类级别 类级别你可以 ...

  7. 用easyui实现查询条件的后端传递并自动刷新表格的两种方法

    用easyui实现查询条件的后端传递并自动刷新表格的两种方法 搜索框如下: 通过datagrid的load方法直接传递参数并自动刷新表格 通过ajax的post函数传递参数并通过loadData方法将 ...

  8. Django学习——ajax发送其他请求、上传文件(ajax和form两种方式)、ajax上传json格式、 Django内置序列化(了解)、分页器的使用

    1 ajax发送其他请求 1 写在form表单 submit和button会触发提交 <form action=""> </form> 注释 2 使用inp ...

  9. windows下获取IP地址的两种方法

    windows下获取IP地址的两种方法: 一种可以获取IPv4和IPv6,但是需要WSAStartup: 一种只能取到IPv4,但是不需要WSAStartup: 如下: 方法一:(可以获取IPv4和I ...

随机推荐

  1. PHP简单获取数据库查询结果并返回JSON

    <?php header("Content-type:text/html;charset=utf-8"); //连接数据库 $con = mysql_connect(&quo ...

  2. JavaEmail

    一.邮件相关基本概念   a)邮件服务器:某厂商提供的电子邮件服务器的集群(或群集)   b)电子邮箱:邮件服务器上提供的个人或企业的邮件空间   c)邮件传输协议:邮件服务器之间,和个人或企业与邮件 ...

  3. rowspan和colspan

    1.说明 rowspan:跨行colspan:跨列用于设计复杂的表格 2.例子<!DOCTYPE html> <html> <head> <meta char ...

  4. Visual Studio创建跨平台移动应用_01.Cordova&Xamarin

          目前开发移动应用有三种模式:Native.Hybird.Web,若要开发跨平台的移动应用,又希望与本地API交互,那么Hybird是一个非常好的选择.       作为一个.Net程序员, ...

  5. selenium webdriver python 元素操作

    常用操作 click 点击某个元素 driver.find_element_by_id(“su”).click()   clear driver.find_element_by_id(“kw”).cl ...

  6. Robot Framework web测试demo

    1.Open RIDE: ride.py 2.New Project: "File" -> "New Project" ,click "OK&q ...

  7. CTime,Systemtime的比较还有转换成日期格式。

    vc为我们提供了两种日期型的变量. 一种是CTime.他的缺点就是年份只支持到2038年,以后的日期就不支持啦,如果你的项目有20-30年的寿命,你就选择使用SYSTEMTIME.这个时间函数来进行比 ...

  8. HDU1863 畅通project 【最小生成树Prim】

    畅通project Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

  9. android Json解析详解

    JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语 言的支持),从而可以在不同平台间进行数 ...

  10. 将Apache添加为Linux的服务 实现自启动(转)

    在Linux下用源代码方式编译安装完Apache后,启动关闭Apache可以通过如下命令实现: /app/apache2.2.14/bin/apachectl start | stop | resta ...