我创建了一个带有一些选择的Django表单,它们相互依赖(用户在第一个选择(等级)中选择选项,并根据其值在第二个选择(主题)中获取一些值):
class AddTaskForm(forms.ModelForm):
grade = forms.ModelChoiceField(queryset=Grade.objects.all())
subject = forms.ModelChoiceField(queryset=Subject.objects.none())
topic = forms.CharField(widget=forms.Textarea)
...
我通过ajax-request获取主题值并使用这样的主题动态更改select(抱歉打算在下一个块中,我是JS的新手并且不知道它是如何正确的):
$.each(data, function(key, value){
$('select[name=subject]').append('<option value="' +
key + '">' + value +'</option>');
});
但是当我点击“提交”按钮时,我收到了属于select的这条消息,我动态地改变了:
Select a valid choice. That choice is not one of the available choices.
我已经检查了html代码并且它完全相同,应该是标准格式。 我做错了什么以及如何以第二种形式动态获取值?
答案 0 :(得分:0)
您必须从服务器发送所有主题值,然后ajax请求可以缩小选项范围。