gpt4 book ai didi

javascript - 将 javascript 数组传递给 Django View

转载 作者:行者123 更新时间:2023-11-30 18:50:48 27 4
gpt4 key购买 nike

我正在使用 django 并有一个搜索结果页面,我希望能够使用 ajax (jquery) 请求按类别进行过滤。页面侧面有一个过滤栏,当有人选择某些类别并点击提交时,相应的结果应该会显示在页面上。我的代码看起来像这样:

<input type="checkbox" name="category1" value="1" />
<input type="checkbox" name="category2" value="2" />
<input type="button" name="submit" onclick="{
var cats = new Array();
$(input[type=checkbox]:checked).each(function() {
cats.push($(this).val());
});
$.getJSON('page.html', {'cats':cats}, function(data) {...});
}" />

但是在 django View 中,当我尝试读取 cats 数组时它返回 500 错误。但是,我可以毫无问题地将标量和字符串传递给 Django View 。

有什么想法吗?有没有更优雅的 jQuery 方法可以在不使用 javascript 数组的情况下执行此操作?

最佳答案

您可以使用 jQuery 的 serializeArray() 方法,而不是手动获取字段值,该方法将一组字段转换为可以作为 JSON 发送的数组。请注意,您可能希望两个复选框都具有相同名称,这样当它被序列化时,它就会变成 Django 将解释为列表的内容。

正如史蒂夫所说,为了进一步提供帮助,我们需要知道 View 在做什么以及错误是什么。

关于javascript - 将 javascript 数组传递给 Django View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3971429/

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