Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 使用Django,下拉菜单的所选选项不会传递给服务器_Jquery_Django_Drop Down Menu_Django Forms_Jquery Select2 - Fatal编程技术网

Jquery 使用Django,下拉菜单的所选选项不会传递给服务器

Jquery 使用Django,下拉菜单的所选选项不会传递给服务器,jquery,django,drop-down-menu,django-forms,jquery-select2,Jquery,Django,Drop Down Menu,Django Forms,Jquery Select2,我正在使用Django和jQuery 我的表单.py: CARPET_TYPE = ( ('', 'Select a carpet type'), ('NRM', 'Normal'), ('SLK', 'Silk'), ('WOL', 'Wool'), ('PER', 'Persian') ) class CalculationForm(forms.Form): carpet_types = forms.ChoiceField(initial=

我正在使用
Django
jQuery

我的
表单.py

CARPET_TYPE = (
    ('', 'Select a carpet type'),
    ('NRM', 'Normal'),
    ('SLK', 'Silk'),
    ('WOL', 'Wool'),
    ('PER', 'Persian')
)


class CalculationForm(forms.Form):
    carpet_types = forms.ChoiceField(initial='', choices=CARPET_TYPE, label='Carpet Types',)

    length = forms.FloatField(min_value=0)

    width = forms.FloatField(min_value=0)
def pick_up(request):
    # If this is a GET request create the calculation form
    if request.method == 'GET':
        calculation_form_pickup = CalculationForm()
    else:
        calculation_form_pickup = CalculationForm(request.POST)

        if calculation_form_pickup.is_valid():
            carpet_type = calculation_form_pickup.cleaned_data['dd-carpets']
            length = calculation_form_pickup.cleaned_data['length']
            width = calculation_form_pickup.cleaned_data['width']
My
calculation\u form.html
(在My
index.html
中用作
块内容
):

现在,当我选择地毯类型并在表单中插入宽度和长度时,如果执行
if calculation\u form\u pickup.is\u valid()
时,我会得到一个错误,即需要
地毯类型
字段。检查
POST
数据时,我可以看到
地毯类型
字段未“清理”。好像我没有在下拉菜单中选择任何内容

我做错了什么

编辑:
我忘了提到这个计算器是基于一个使用
select2
库的引导模板的。

您给了select一个名称属性“dd地毯”,而不是“地毯类型”

def pick_up(request):
    # If this is a GET request create the calculation form
    if request.method == 'GET':
        calculation_form_pickup = CalculationForm()
    else:
        calculation_form_pickup = CalculationForm(request.POST)

        if calculation_form_pickup.is_valid():
            carpet_type = calculation_form_pickup.cleaned_data['dd-carpets']
            length = calculation_form_pickup.cleaned_data['length']
            width = calculation_form_pickup.cleaned_data['width']