有关Ajax实现的两种方法
首先我们来常见的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 发生变化。
|
| 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实现的两种方法的更多相关文章
- ajax后台请求两种方法(js和jQuery)
(1)js的ajax var xmlHttp; if(window.XMLHttpRequest){ xmlHttp=new XMLHttpRequest(); }else{ xmlHttp=new ...
- ASP.NET MVC 实现AJAX跨域请求的两种方法
通常发送AJAX请求都是在本域内完成的,也就是向本域内的某个URL发送请求,完成部分页面的刷新.但有的时候需要向其它域发送AJAX请求,完成数据的加载,例如Google. 在ASP.NET MVC 框 ...
- Ajax中解析Json的两种方法详解
eval(); //此方法不推荐 JSON.parse(); //推荐方法 一.两种方法的区别 我们先初始化一个json格式的对象: var jsonDate = '{ "name&qu ...
- Ajax中解析Json的两种方法
eval(); //此方法不推荐 JSON.parse(); //推荐方法 一.两种方法的区别 我们先初始化一个json格式的对象: var jsonDate = '{ "name" ...
- C# web api 返回类型设置为json的两种方法
每次写博客,第一句话都是这样的:程序员很苦逼,除了会写程序,还得会写博客!当然,希望将来的一天,某位老板看到此博客,给你的程序员职工加点薪资吧!因为程序员的世界除了苦逼就是沉默.我眼中的程序员大多都不 ...
- jQuery插件开发的两种方法及$.fn.extend的详解(转)
jQuery插件开发的两种方法及$.fn.extend的详解 jQuery插件开发分为两种:1 类级别.2 对象级别,下面为大家详细介绍下 jQuery插件开发分为两种: 1 类级别 类级别你可以 ...
- 用easyui实现查询条件的后端传递并自动刷新表格的两种方法
用easyui实现查询条件的后端传递并自动刷新表格的两种方法 搜索框如下: 通过datagrid的load方法直接传递参数并自动刷新表格 通过ajax的post函数传递参数并通过loadData方法将 ...
- Django学习——ajax发送其他请求、上传文件(ajax和form两种方式)、ajax上传json格式、 Django内置序列化(了解)、分页器的使用
1 ajax发送其他请求 1 写在form表单 submit和button会触发提交 <form action=""> </form> 注释 2 使用inp ...
- windows下获取IP地址的两种方法
windows下获取IP地址的两种方法: 一种可以获取IPv4和IPv6,但是需要WSAStartup: 一种只能取到IPv4,但是不需要WSAStartup: 如下: 方法一:(可以获取IPv4和I ...
随机推荐
- Swift互用性:与 Cocoa 数据类型共舞(Swift 2.0版)-b
本节内容包括: 字符串(Strings) 数值(Numbers) 集合类(Collection Classes) 错误(Errors) Foundation数据类型(Foundation Data T ...
- nginx+tomcat 配置虚拟目录。。
之前nginx作为代理.之前的location写的太绝对了..之前把动态请求全部交给tomcat,然后需要配置虚拟路径的时候,去到tomcat就被404了.得高人指点之后,配置虚拟目录的时候需要重新写 ...
- Mobie 有用的几个css js代码
1. 防止页面缩放 <meta name="viewport" content="width=device-width, initial-scale=1, maxi ...
- 【Maven实战】Maven开发环境的搭建和案例展示
1.首先到www.apache.org中下载maven,得到一个apache-maven-3.1.0-bin.zip的压缩包. 2.将此压缩包解压,这里解压到D:\docs中,然后找到maven的bi ...
- 利用ordered hints优化SQL
SQL_ID 4g70n3k9bqc5v, child number 0 ------------------------------------- MERGE INTO YJBZH_GRXDFHZ ...
- thickbox 关于动态生成 无法跳出弹出框的问题
问题描述: 用jQuery动态生成thickbox的连接代码,发现没有效果. 原因: thickbox在页面加载后,会给a,input,area等绑定弹出事件. 通过tb_init(’a.thickb ...
- Linux&shell之结构化命令
写在前面:案例.常用.归类.解释说明.(By Jim)使用if-then语句如果命令的退出状态是0(成功执行命令),将执行then后面的所有命令.如果命令的退出状态是0以外的其他值,那么then后面的 ...
- 【转】Android理解:显式和隐式Intent---- try catch
原文网址:http://blog.csdn.net/xiao__gui/article/details/11392987 Intent是Android初学者比较难理解的一个东西.我这里以通俗易懂的语言 ...
- C# POST数据到指定页面,并跳转至该页面
/// <summary> /// 跨页面POST数据 /// </summary> public class RemotePost : Dictionary<strin ...
- IE浏览器下面要实现滤镜(transparent),必须要加filter
遇到的问题是: ie9下面的a标签样式是background-color:transparent;导致链接失效,点不动.这个问题跟IE9及其以下a标签链接加 background-color:tran ...