我有django 1.7,我提出了一个视图,我想接收jquery发送的信息2.1.1
我可以在视图中接收信息并打印它,但是当我使用JsonResponse
将JSON发送到模板中的函数,并使用console.log
来查看JSON时,没有任何反应。
views.py
def filtro(request):
if request.is_ajax():
carrera = Event.objects.filter(category__name = request.GET['id'])
reponse = JsonResponse({'name' : carrera.name, 'age' : carrera.summary})
return HttpResponse(response.content)
else:
return ('/')
urls.py
url(r'^filtro/$', 'apps.eventos.views.filtro', name="filtro"),
eventos.html
$('.list li a').on('click', Filtrar);
function Filtrar(){
var id = $(this).text()
$.ajax({
data : {'id' : id},
url : '/filtro/',
type : 'get',
success: function(data){
console.log(data);
}
});
};
当有人点击任何a
标记时,我想通过JSON从我的模型中显示信息。
答案 0 :(得分:1)
阻止默认点击事件
$('.list li a').on('click', Filtrar);
function Filtrar(e){
e.preventDefault();
var id = $(this).text()
$.ajax({
data : {'id' : id},
url : '/filtro/',
type : 'get',
success: function(data){
console.log(data);
}
});
};
返回json响应
return JsonResponse({'name' : carrera.name, 'age' : carrera.summary})
答案 1 :(得分:0)
我不知道python,但是你认为jquery ajax调用
data : {'id' : '\"'+ id + '\"'},
代替data : {'id' : id},
可以解决您的问题。
因为您要发送一个字符串,所以您需要在引号内添加它。