这可能是一个简单的问题,但我对JavaScript还不是很坚定。
我想要一个使用select2的自动填充搜索表单。
当用户在select2下拉框中选择结果时,我想立即提交搜索表单,以便我不需要表单按钮。
我找到了select2:select事件处理程序 - 但我没有让它工作。有什么帮助吗?
我的select2工作正常,如果我包含一个按钮,我可以提交表单并接收所选的对象ID:
<form action="" method="get" id="project-search">
<select class="form-control"
data-autocomplete-light-function="select2"
data-autocomplete-light-url="/output/project-autocomplete/"
data-placeholder="Suche nach Projektnr. oder Projektleiter"
id="id_projekt" name="projekt">
<option value="" selected="selected">----------</option>
</select>
</form>
该javascript代码段似乎不起作用:
<script type="text/javascript">
$(document).ready(function() {
$eventSelect.on("select2:select", function() {
console.log("select2:select");
$(this).parents('form').submit();
});
});
</script>
编辑:我在Chrome控制台中收到此错误消息:
Uncaught ReferenceError: $eventSelect is not defined
谢谢!
我正在使用django和django-autocomplete-light作为后端顺便说一句。
答案 0 :(得分:0)
https://api.jquery.com/change/
Jquery具有能够检测选择/复选框上的更改的功能。尝试:
$('#id_projekt').change(function(){
$('#project-search').submit();
});