Работа с массивами формы в ColdFusion?

Я понятия не имею, как обработать это в ColdFusion 9, у меня есть форма, отправляемая (POST) с флажками элемента, названными объектами [].

Когда я делаю a <cfdump var="#form#" /> без проблем, я получаю все объекты, показанные с именами собственными как items[] например:

struct 
ITEMS[] 13,14  
FIELDNAMES ITEMS[] 

однако выполнение a <cfdump var="#form.items[]#" /> результаты по ошибке. Как я получаю доступ к значениям полей CF9? Так или иначе цикл через него?

Я, может казаться, ничего не делаю с массивом для вытаскивания идентификатора из него? Мысли? Я отчасти озадачен, и ColdFusion не является самым легким языком для нахождения примеров / ссылки в сети.;)

Существует ли корректный способ иметь дело с этим? Я должен получить идентификатор из там, таким образом, я могу сослаться на то, какие строки были проверены в форме, таким образом, я могу добиться действия.

Спасибо!

8
задан Dave DuPlantis 30 October 2012 в 15:04
поделиться

1 ответ

В ColdFusion нет массивов форм. Наличие в конце '[]' не делает его массивом. Вы можете получить доступ к значениям флажков из области формы следующим образом:

FORM["ITEMS[]"]

Точечная запись не работает из-за '[]' . См .: http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec22c24-7fb2.html

Значения флажков представляют собой просто значения, разделенные запятыми, которые представляют собой список в ColdFusion

Чтобы пропустите его, используйте cfloop list =:

<cfoutput>
  <cfloop index="i" list="#FORM['ITEMS[]']#">    
    #i#
  </cfloop>
</cfoutput>

Чтобы преобразовать список в массив, используйте ListToArray () . Существуют функции списков, такие как listGetAt () , но если вы делаете много произвольного доступа, было бы разумнее сначала преобразовать список в массив.

Мысли, я как бы в тупике и Coldfusion - не самый простой язык найти примеры / ссылки на net;)

24
ответ дан 5 December 2019 в 05:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: