如何在Django的Select小部件中添加一个onchange js事件?

6

我需要在 Django 项目中的收据下拉列表上附加一个 JavaScript onchange 事件。当下拉列表的值更改时,应调用一个 JavaScript 函数。如何实现?以下是 form.py 文件:

from django import forms
receipt_types=(('option1','Option 1'),('option2','Option 2'),('option3','Option 3'),)
class accountsInForm(forms.Form):
    receipt=forms.CharField(max_length=100, widget=forms.Select(choices=reciept_types))

JS函数在前端完成。尝试触发点击事件。 - hansTheFranz
1
在模板文件中,选择选项的代码是 {{receipt}}。我应该在哪里添加 JS 脚本? - Abhijith Konnayil
1个回答

12

将代码更改如下:
receipt=forms.ChoiceField(reciept_types, widget=forms.Select(attrs={'onchange': "myFunction();"}))

如果您想在JavaScript代码中访问输入值,这是非常常见的:

{'onchange' : "myFunction(this.value);"}

以下是JS代码:

myFunction(value) {
    console.log(value)
}

2
如果我有一个包含myFunction脚本的外部JavaScript文件,我应该如何在forms.py中正确引用它? - Lotte

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接