Как скрыть метку для скрытого поля - PullRequest
1 голос
/ 30 марта 2011

Я пытался скрыть метку скрытого поля, определенного в классе модели, используя API-интерфейс Django.Операции CRUD модели управляются администратором Django.

Моя модель

class RackForm(django.forms.ModelForm):

  def __init__(self, *args, **kwargs):
     self.fields['racktypeid'].widget = \
         forms.HiddenInput(attrs={'styles': 'display:none;'})
     ..... other initialization

Сгенерированный источник HTML приведен ниже

<div class="form-row racktypeid">


            <div>

                    **<label for="id_racktypeid" class="required">Rack Type:</label>**

                        **<input styles="display:none;" name="racktypeid" value="3" onchange="changeRackType(this);" type="hidden" id="id_racktypeid" />**




                    <p class="help">The physical type of rack as defined in the rack type list</p>

            </div>

    </div>

Поле былоскрытый, но не связанный ярлык.Я даже пытался использовать для этого jQuery.Я могу ошибаться с синтаксисом.Если да, поправьте меня, если я ошибаюсь.

$(document).ready(function() {
    // Hide label for RackForm rack type id label.
   $('#id_racktypeid, label[for="#id_racktypeid"]').hide()
    $('#id_racktypeid, label[for="#id_racktypeid"]').parent().hide()
  });
});

Ни один из вариантов не выполнен.Что мне нужно сделать, чтобы скрыть метку скрытого поля?

Обновление: в конце концов я решил скрыть весь тег div.

1 Ответ

0 голосов
/ 30 марта 2011

Ваша проблема связана с использованием {{ form.as_p }} или какой-либо другой функции быстрого доступа для визуализации вашей формы. Сделайте форму самостоятельно, и у вас не возникнет этой проблемы.

Также, в Django 1.3 есть более простой способ изменить виджет для поля, см. http://docs.djangoproject.com/en/1.3/topics/forms/modelforms/#overriding-the-default-field-types-or-widgets

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...