CFSelect + Bind + Group без группировки

У меня есть тег CFSELECT, как показано ниже, но он не создает теги <optgroup>. Как мне это заархивировать?

<cfselect name="name" value="DB_ID" group="DB_Grouping"
display="DB_Description" selected="#Selected_ID#"
bind="cfc:[path_to_CFC]" bindOnLoad="true" style="width:305px;" />

Выпадающий список загружается следующим образом:

<select id="name" name="name">
    <option value="DB_ID_1">DB_Description_1</option>
    <option value="DB_ID_2">DB_Description_2</option>
    <option value="DB_ID_3">DB_Description_3</option>
    <option value="DB_ID_4">DB_Description_4</option>
</select>

вместо:

<select id="name" name="name">
    <optgroup label="DB_Grouping_1">
        <option value="DB_ID_1">DB_Description_1</option>
        <option value="DB_ID_2">DB_Description_2</option>
    </optgroup>
    <optgroup label="DB_Grouping_2">
        <option value="DB_ID_3">DB_Description_3</option>
        <option value="DB_ID_4">DB_Description_4</option>
    </optgroup> 
</select>

Кто-нибудь может помочь?


person RealSollyM    schedule 16.07.2014    source источник


Ответы (1)


Вам это может не понравиться, но лучший ответ — не использовать cfselect. Просто используйте обычный выбор HTML и используйте jquery для загрузки данных и создания параметров и групп. Вот почему следует избегать элементов пользовательского интерфейса CF. Как только вам нужно сделать что-то немного выходящее за рамки нормы, это становится слишком сложным. В долгосрочной перспективе вам будет лучше, потому что вы будете знать, как сворачивать свои собственные запросы Ajax и создавать JavaScript для вывода параметров, и вы не застрянете на способе Adobe сделать это.

person Sean Coyne    schedule 20.07.2014
comment
Я не знаю, должен ли я отметить это как принятый ответ или нет, потому что на самом деле он не отвечает на вопрос, а дает другой, совершенно другой подход к попытке решить проблему. Сказать, что это слишком сложно, предполагает, что это возможно - тогда мой вопрос: как мне сделать это таким образом? Хотя сайт CF в настоящее время является нашим основным веб-сайтом, мы работаем над его переносом на .NET и поэтому не можем изменить большинство существующих процессов для простого раскрывающегося списка. На данный момент я реализовал тег <option> для отображения <option value="...">GROUPING | Category</option>. Это не лучшее. - person RealSollyM; 21.07.2014
comment
Bind не поддерживает группировку. Теги пользовательского интерфейса CF накладывают ограничения. То, что вы используете CF, не означает, что вы должны их использовать. Вы используете HTML в первую очередь. Так что делайте это правильно и стройте сами. Вам не обязательно принимать мой ответ, но он не будет работать так, как вы хотите, просто с помощью cfselect. - person Sean Coyne; 21.07.2014
comment
Я думаю, что комментарий стоил голосования. По крайней мере, следующий человек, который прочитает ответ, тоже будет знать, что идти по этому пути не стоит. - person RealSollyM; 21.07.2014