如何在表单中获得多个自动填充输入字段?

时间:2012-03-30 16:53:36

标签: javascript jquery python django

我已经设法让一个自动完成工作,筛选一个'经理'列表...但是,我有另一个需要自动完成的字段,在同一表格中,返回公司列表。是否可以在同一表单中拥有多个自动完成功能? 我已经尝试导入另一个脚本,但这似乎不起作用。

模板:

<label for="id_manager">Manager Username</label>
{{ form.manager }} // This autocomplete works
<label for="id_company">Company Name</label>
{{ form.company }} // This doesn't

forms.py:

manager = forms.CharField(widget=forms.TextInput(attrs={'class':'input-text', 'id':'id_managerbox'}), max_length=30, required=False)
company = forms.CharField(max_length=200, required=False,widget=forms.TextInput(attrs={'class':'input-text','id':'id_companybox'}))

这是一个有效的Manager脚本。对于公司,我有一个单独的,几乎相同的。

$(document).ready(function() {
    $.get('/autocomplete/managers/', function(data) {
        var completions = new Array();
        var dict = JSON.parse(data, function(key, value) {
            completions.push(key);
            return value;
        });
        $('#id_managerbox').autocomplete({
            source: completions,
            minLength: 2,
            select: function(event, ui) {
                $('#id_manager').val(dict[ui.item.value]);
            }
        });
    });
});

两个经理自动填充和公司自动填充都有单独的views.py 所以我的问题是:有没有办法将2个自动完成脚本放入一个模板?有没有办法将2个视图合并为一个js脚本结果? (我相信我可以更好地改写这个问题)。或者我完全以错误的方式解决这个问题? (只是为了让你知道,我不是一个js巫师。)非常感谢你提前帮助。

1 个答案:

答案 0 :(得分:0)

以下是两个自动填充功能的示例: http://jsfiddle.net/822eZ/1/

您需要为每个输入实例化自动完成功能。