Я работаю над простым генератором опросов на основе php.Все, что он делает, получает анкету из БД и создает соответствующую форму на странице.Для шаблонирования я использую PEAR HTML_Template_IT (1.3) и наткнулся на интересную «особенность».
Давайте предположим, что у нас есть шаблон с вложенной структурой, такой как:
<!-- BEGIN questionnaire -->
<!-- BEGIN question.T -->
{question} <input type="text" .... />
<!-- END question.T -->
<!-- BEGIN question.R -->
{question}
<!-- BEGIN question.R.answer -->
<input type="radio" .... /> {option}
<!-- END question.R.answer -->
<!-- END question.R -->
<!-- END questionnaire -->
Как вымогу себе представить, у меня есть похожие блоки для разных типов полей ввода.
Теперь вот интересная вещь.Когда я пытаюсь отобразить поля, я заметил, что они отображаются странным образом.Сначала у меня будут текстовые блоки, а в конце все вопросы с радиогруппой.Когда я вынуждаю свой код использовать только вопрос.Т (например) для отображения вопросов, тогда порядок просто нормальный, но когда я добираюсь до Радио, выбираю, блоки Флажок (у всех есть внутренние блоки 'ответа') порядокбольше нетПоэтому я предполагаю, что это как-то связано со структурой шаблона.Забавно, что когда я меняю порядок блоков в шаблоне (сначала вопрос «R»), в результате сначала отображаются все вопросы «Радио», а затем текстовые поля.Похоже, порядок в дочерних блоках шаблона как-то имеет значение, но не знаю почему.
Кто-нибудь сталкивался с таким поведением?