有关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 ...
随机推荐
- XCode7打包上传报错
在XCode7上传应用时,上传失败遇到两个错误,提示如下: ERROR ITMS-90535: "Unexpected CFBundleExecutable Key. The bundl ...
- Qt 窗体布局 good
布局相关对象及简介 窗体上的所有的控件必须有一个合适的尺寸和位置.Qt提供了一些类负责排列窗体上的控件,主要有:QHBoxLayout,QVBoxLayout,QGridLayout,QStackLa ...
- 感兴趣的Linux发行版
1. Ubuntu,包括KUbuntu,XUbuntu,Kyrin等等 2. BluestarLinux - 基于Arch Linux,感觉很美 http://sourceforge.net/proj ...
- 【转】带checkbox的ListView实现(二)——自定义Checkable控件的实现方法
原文网址:http://blog.csdn.net/harvic880925/article/details/40475367 前言:前一篇文章给大家展示了传统的Listview的写法,但有的时候我们 ...
- 向Int数组插入随机1到100
这是一个经典的面试题,考察了几个知识点 下边的代码是传统经典的做法 ]; ArrayList myList=new ArrayList(); Random rnd=new Random(); ) { ...
- HDOJ(HDU) 1860 统计字符
Problem Description 统计一个给定字符串中指定的字符出现的次数 Input 测试输入包含若干测试用例,每个测试用例包含2行,第1行为一个长度不超过5的字符串,第2行为一个长度不超过8 ...
- 比较了一下基于PhoneGAP/JQ Mobile 等基于HTML5的Phone 开发框架
比较了一下基于PhoneGAP/JQ Mobile 等基于HTML5的Phone 开发框架,如果做APP客户端的化,想达到Native UI的效果,都是胡扯的,根本不可能. PhoneGAP 如果想达 ...
- ubuntu14.04 安装
summary: a). the way in the internet just a sugestion, I must to do it in my own hands, yes ! just ...
- tomcat安全配置之禁用Directory Listing
什么是Directory Listing?通俗点讲,就是在webapp的目录下如果没有放置index.html或者类似的文件,如果从IE或者其它浏览器文章这个路径时,会惊喜的发现这个目录下的文件列表被 ...
- Android应用程序之间共享文字和图片(一)
以下为TestReceiveShare1工程 MainActivity如下: package cn.testreceiveshare1; import java.util.ArrayList; imp ...