如何在django admin中选择单选按钮时隐藏/显示字段?

models.py

from django.db import models from django.contrib.auth.models import User STATUS_CHOICES = ((1, 'Accepted'),(0, 'Rejected'),) class Leave(models.Model): ---- ---- ---- ---- status = models.IntegerField(choices=STATUS_CHOICES, default = 0) reason_reject = models.CharField(('reason for rejection'),max_length=50, blank=True) def __str__(self): return self.name 

admin.py

 from django.contrib import admin from .models import Leave @admin.register(Leave) class LeaveAdmin(admin.ModelAdmin): ------ ------ ----- class Media: js = ('/static/admin/js/admin.js') 

– admin.js

  (function($) { $(function() { var reject = document.getElementById('id_status_0') var accept = document.getElementById("id_status_1") var reason_reject = document.getElementById("id_reason_reject") if (accept.checked == true){ reason_reject.style.display = "none" } else{ reason_reject.style.display = "block" } }); })(django.jQuery); 

现在我已经在admin.py中导入了该文件,如何触发jQuery函数使其正常工作。

最新情况:

该function有效但我需要重新加载页面以使该字段显示和消失。 我想要一些相当于HTML中'on-click'事件的东西。 我不知道Javascript。

 $(function() { $('input[name="status"]').on('click', function() { if ($(this).val() == '0') { $('#id_reason_reject').show(); } else { $('#id_reason_reject').hide(); } }); })