一、原生试
//设置浏览器的兼容性
function createXmlHttp() {
var xmlHttp = null;
try {
//Firefox, Opera 8.0+, Safari
xmlHttp = new XMLHttpRequest();
} catch (e) {
//IE
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
//ajax异步提交请求
function submit(){
var xmlHttp = createXmlHttp();
if(!xmlHttp) {
alert("您的浏览器不支持AJAX!");
return 0;
}
var url = ' ';
var postData = "";
postData ="departmentId="+ codes; //需要传递的参数
xmlHttp.open("POST", url, true);
xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlHttp.onreadystatechange = function() {
if(xmlHttp.readyState == 4 && xmlHttp.status == 200) {
if(xmlHttp.responseText) { //请求成功后的回调函数
var data=xmlHttp.responseText; //返回的数据 String类型
var list=eval(data); //转换为Object类型
if(list.length>0){
//获取父级窗体的元素在子级页面进行赋值
window.opener.document.getElementById("departmentId").value = "";
window.opener.document.getElementById("departmentName").value= names;
//获取父级页面的select下拉框元素
var position= window.opener.document.getElementById("position");
position.options.length=0; //清空option项的值
position.options.add(new Option("请选择","0")); //动态给option项添加默认值;
//循环数据动态给option项赋值
for(var i = 0; i<list.length;i++){
//动态添加职位下拉框中的值
position.options.add(new Option(list[i].name,list[i].id));
}
window.close();
} else{
alert("该部门下没有职位请添加职位");
window.opener.document.getElementById("departmentId").value ="";
window.opener.document.getElementById("departmentName").value= "";
var position= window.opener.document.getElementById("position");
position.options.length=0;
position.options.add(new Option("请选择","0"));
//window.location.href = "<%=request.getContextPath()%>/positionAction.do?method=toadd";
window.close();
}
} else{
alert("删除失败");
}
}
}
xmlHttp.send(postData);
}
二、jquery _ajax 异步请求
1.post异步请求
$.post("url",{'data':data}, function(datas,status){
if(status=="success"){
//请求成功操作
var list=eval(data); //转换为Object类型
for(var i = 0;i<list.length;i++){ //遍历返回的数据
alert(list[i]);//获取当前返回的数据
}
alert("操作成功!");
}else{
alert("操作失败!");
}
},'json');