我从 django 后端获取 ajax 发布数据时遇到问题,我不知道如何传递值,请帮忙。
在 html 中我有这个:
<form id="get_vulns_from_family">
<label for="family_content">Enter a family name to display the NVTs</label>
<input id="family_content" />
<input type="submit" value="search" />
</form>
在javascript中我写了这个:
$(function() {
$("#get_vulns_from_family").submit(function(event) {
var family_text = $("#family_content").val();
var family_data = {"family": family_text};
$.ajax({
url: "/template_conf/get_vulns_from_family",
type: "POST",
data: family_data,
success: function(response) {
console.log(response);
},
error: function(response) {
console.log("failed!");
}
});
// prevent default posting of form
event.preventDefault();
});
});
在对应于 url 的 Django 方法中/template_conf/get_vulns_from_family
,我尝试了这个:
def get_vuln_from_family(request):
family = request.POST['family']
# some other operations to get value for variable "json_data"
return HttpResponse(simplejson.dumps(json_data))
但是 django 说:MultiValueDictKeyError: "Key 'family' not found in <QueryDict: {}>"
,这意味着 POST 字典是空的。我是否使用错误的方式获取帖子数据?如果是这样,我该怎么办?谢谢。