Как читать с помощью Jquery и элемента readonly для django
Объект1
смотрите изображение
есть несколько полей только для чтения, которые я установил на django, но я хочу читать значения с помощью Jquery, но правда не знаю как это сделать, я хочу сделать это потому что в зависимости от значения, которое установлено в поле "tipo" я хочу сделать некоторые значения видимыми или нет.
let tipo_persona_check = function(){
if ($('#id_tipo').val() == 'fisica'){
$('.field-empresa').hide();
$('label[for=id_persona').text('Suscriptor');
}else{
$('label[for=id_persona').text('Apoderado');
$('.field-empresa').show();
}
В данном случае я скрываю или показываю поле empresa в зависимости от значения id_tipo, но когда оно находится в режиме readonly, этого id не существует, есть только класс span под названием readonly (для всех readonly) со значением, но я не знаю, как получить его, мне нужно знать, является ли значение "fisica" или другим из поля tipo, доступного для чтения, чтобы сделать что-то.
есть идеи?
Я не проверял, действительно ли ID виден идентификатор, если это так.
Мы предполагаем, что идентификатор не виден.
Решение заключается в том, что вы можете добавить input в этот раздел, чтобы вы могли найти ID по нему.
admin.py
@admin.register(SomeModel)
class SomeModelAdmin(admin.ModelAdmin):
def id_field(self, obj):
return mark_safe(f"<input type='hidden' id='ID' value='{obj.pk}'>")
readonly_fields = ["id_field"]
и в вашем js файле:
id = document.getElementById('ID').value