Почему MyFaces / Trinidad отображает мои отключенные inputTexts как div? - PullRequest
1 голос
/ 18 ноября 2011

Обманчиво простой вопрос, но я нахожусь здесь на кону.

У меня есть документ. Содержит форму. Который содержит подчиненную форму. Который содержит текстовое поле только для чтения. Вот соответствующая часть структуры:

<tr:document ...>
    <tr:form ....>
        <tr:subform ...>
            <div ...><div ...>
            <tr:panelGroupLayout>
                <tr:panelFormLayout>
                    <tr:inputText id="selectedAmount"
                        label="#{...}"
                        value="#{...}"
                        disabled="true" />
                </tr:panelFormLayout>
            </tr:panelGroupLayout>
            </div></div>
        </tr:subform>
    </tr:form>
</tr:document>

(ни один из атрибутов в ... не устанавливает информацию о стиле.)

Почему MyFaces создает для внутреннего элемента элемент div, а не input type = "text"? Я видел формы с (очевидно) этой точной такой же структурой, у которой не было этой проблемы.

Причина, по которой это глупо и неприемлемо, заключается в том, что div, когда он пустой, отображается не в виде рамки, а в виде одной строки (граница сворачивается, поскольку нет содержимого и стиля высоты). Ручная установка высоты через css также недопустима, потому что шрифт может варьироваться от компьютера к компьютеру. Я действительно хотел, чтобы он всегда отображал тег ввода.

Есть идеи? Не стесняйтесь спрашивать подробности, если хотите подтвердить любые подозрения. У меня слишком много данных, чтобы просто выбросить сюда все.

...