最近项目中经常会用到ajax,在这里记录下
POST
(ajax第一种写法----success----error )
$('#actionButton').click(function(){
$.ajax({
type: "POST",
url: '/action_name/',
traditional :true,
data:{'user_name': '张三', 'sex': '男'},
async: false,// 异步
headers: {
"X-CSRFToken": getCookie("csrftoken")
},// django中post请求必须用到,方法在下方
success: function (result) {
alert("success!");
},
error : function() {
alert("error!");
}
});
});
/* ajax POST 必須 */
function getCookie(name) {
var r = document.cookie.match("\\b" + name + "=([^;]*)\\b");
return r ? r[1] : undefined;
}// 这个方法是我在网上搜索到的,由于时间有点久了才整理的,如果作者看到了,可以告诉我链接,我添加上来,
// 灰常感谢
GET
(ajax第二种写法----.done()----.fail())
$('#actionButton').click(function(){
$.ajax({
url: '/action_name/',
type: 'GET',
dataType:"json",// 后台传回来的值是json格式
data:{'user_name': '张三', 'sex': '男'},
async: false,
})
.done(function(data) {
$(data).each(function (i, item) {
......
});
})
.fail(function() {
alert('error!');
});
});
django----python后台获取ajax传来的参数
# POST取参
if request.method == 'POST':
if 'user_name' in request.POST:
user_name= request.POST.get('user_name')
# GET取参
if request.method == 'GET':
if 'sex' in request.GET:
sex= request.GET.get('sex')
再整理一些小的知识点
参数是form表单
data:$('#actionForm').serialize(),
参数是数组
userIdArray = ['55', '56'];
data: {"userIdArray": userIdArray },
参数是数组
python django 接收
if "userIdArray[]" in request.POST:
print('request.POST**********',request.POST)
userIdArray = request.POST.getlist("userIdArray[]")
print('userIdArray**********',userIdArray)
for userId in userIdArray:
print('userId**********',userId)
参数是数组
运行结果: