Jquery发送ajax请求的方法有很多,其中最基本的是$.ajax方法,在其之上封装的方法有 $.get, $post, $.put, $.ajaxForm, $fileUpload等。而在这些上层的方法中,后两个为jquery的插件所提供,如果需要用到的话,还需要引入对象的js库文件。这里我们记录下各方法的使用及ajax方法最原始的调用方式。
$get方法:
$.get(
'http://www.baidu.com',
function(html){
console.log(html);
}
);
$.ajax({
type : "GET",
url : 'http://www.baidu.com',
success : function(html){
console.log(html);
}
});
$.post方法:
$.post(
'http://www.baidu.com/search',
{query : "javascript"},
function(data){
console.log(data);
}
);
$.ajax({
type : "POST",
url : 'http://www.baidu.com/search',
data : {query : "javascript"},
contentType : "application/x-www-form-urlencoded",
success : function(data){
console.log(data);
}
});
//提交存json数据
$.ajax({
type : "POST",
url : 'http://www.baidu.com/search',
data : {query : "javascript"},
contentType : "application/json",
success : function(data){
console.log(data);
}
});
//提交from数据
$.ajax({
type : "POST",
url : 'http://www.baidu.com/search',
data : $("form").serialize(), //不带文件的form表单
success : function(data){
console.log(data);
}
});
$.ajaxFrom方法:
$('form').ajaxFrom({
target : '#result',
beforeSubmit : function(formData, jqForm, options){
console.log(options);
},
success : function(responseText, statusText){
console.log(responseText);
}
});
$.ajax({
type: 'POST',
url: '/upload',
data: new FormData($('from')[0]), //带文件的form表单
contentType: false,
processData: false,
success: function (result) {
console.log(result);
},
error: function (err) {
console.log(err);
}
});
$.fileupload方法:
$('#fileupload').fileupload({
dataType: 'json',
done: function (e, data) {
console.log(JSON.stringify(data));
}
});
var fd = new FormData();
fd.append('file', $('#fileupload')[0].files[0]);
fd.append('file2', new File([fileBlob], 'filename.txt'));
$.ajax({
type: 'POST',
url: '/upload',
data: fd,
contentType: false,
processData: false,
success: function (result) {
console.log(result);
},
error: function (err) {
console.log(err);
}
});