如何将 onchange js 事件添加到 Django 中的 Select 小部件?

Abh*_*h K 2 javascript python django django-forms

我需要将 JavaScript onchange 事件附加到Django 项目中的收据下拉列表。当下拉列表的值更改时,将调用 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))
Run Code Online (Sandbox Code Playgroud)

Abh*_*h K 5

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

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

{'onchange' : "myFunction(this.value);"}
Run Code Online (Sandbox Code Playgroud)

和JS:

myFunction(value) {
    console.log(value)
}
Run Code Online (Sandbox Code Playgroud)

  • 如果我有一个带有 `myFunction` 脚本的外部 javascript 文件,我如何在 forms.py 中正确指向它? (2认同)