gpt4 book ai didi

python - 通过POST方法发送数据以在AJAX请求中显示

转载 作者:行者123 更新时间:2023-12-01 07:23:46 25 4
gpt4 key购买 nike

Ajax方法发布并将字符串传递给views.py,views.py中的post方法可以从ajax接收值,但我无法在ajax成功方法中获取要打印回的结果值。

我尝试返回 HTTPresponse、重定向、渲染,但似乎没有任何效果。

//Ajax//

$("#viewData").click(function(event){

$.ajax({
type: "POST",
data: {
tempData : "permView",
csrfmiddlewaretoken: '{{ csrf_token }}',
},
success: function(result) {
console.log('{{ result }}')
},

});
event.preventDefault()
});
});

//Python//views.py

class SpreadSheetView(TemplateView):
template_name = 'spreadsheet.html'

def get(self, request, *args, **kwargs):
return render(request, self.template_name, {'type': '86'})

def post(self, request):
if request.POST['tempData'] == 'permView':
return render(request, self.template_name, {'result': "test result"})

最佳答案

您遇到以下两个问题之一:

  1. 您的 View 中可能会出现错误,但您无法注意到它,因为您没有在 ajax 请求中涵盖错误情况。只需像这样更新您的 ajax 请求调用,然后查看是否收到错误。
  2. 您没有为请求指定 dataType 参数,这会导致 ajax 错误地猜测您的响应类型。

要涵盖这两项,请更新您的请求,例如:

$.ajax({
type: "GET",
dataType : 'html', # or other types, depending on your needs.
data: {
tempData : "permView",
csrfmiddlewaretoken: '{{ csrf_token }}',
},
success: function(data, status) {
console.log(data)
console.log(status)
},
error: function(xhr, status, error) {
console.log(status);
console.log(error);
}
});

关于python - 通过POST方法发送数据以在AJAX请求中显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57552907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com