我在写一个Django表单,有两个布尔字段:
distributive = forms.BooleanField(widget=forms.CheckboxInput(
attrs={'id':'distributive'}),required=False, initial=False)
transitivity = forms.BooleanField(widget=forms.CheckboxInput(
attrs={'id':'transitivity'}),required=False, initial=False)
我正在视图中收集此表单中的数据:
^{pr2}$不管我是否选中这些框,这两个字段都返回为假bools。我很困惑。在
任何洞察力都将不胜感激。谢谢!在
阿拉斯代尔有些洞察力: 我手动向表单字段添加id属性会覆盖Django的默认id设置,因此浏览器不会从字段返回任何数据。在
不幸的是,我需要通过javaScript文件访问这些表单字段,因为我使用的是Ajax。我是JavaScript和Ajax的新手,所以我不知道如何解决这个问题。在
以下是我的Ajax post请求代码:
$.ajax({
url : "/verbquery/", // the endpoint
type : "POST", // http method
data : { english_gloss : $('#english_gloss').val(), person : $('#person').val(), number : $('#number').val(),
mode : $('#mode').val(), transitivity : $('#transitivity').val(), distributive : $('#distributive').val(),
voice : $('#voice').val()}, // data sent with the post request
简单地将传递性和分配性的id更改为django的默认id_传递性和id_distributive并不能将它们放入字典中。我知道这不是帖子的初衷,但任何帮助都将不胜感激。在
我认为这是javascript的问题,而不是Django表单。在
$('#transitivity').val()
将始终为复选框返回'on'
。在请尝试以下方法:
相关问题 更多 >
编程相关推荐