Как получить переменную NAME, а не VALUE переменной в ColdFusion? - PullRequest
1 голос
/ 07 марта 2012

Основная идея такова: у меня есть форма, которая динамически генерирует поля формы, поэтому предположим, что на 5 человек могут подписаться подписки (все они стоят 10 долларов), после чего эти 5 событий будут отображены. Как это:

          <tr>
            <th><label>#SeminarWisTitle#</label></th>
            <td>
            <label><input type="checkbox" name="#SeminarWisID#" value="10.00" onclick="CheckChoice(this);" onfocus="startCalc();" onblur="stopCalc();" class="checkbox" /> Individual Webinar ($119)</label>
            </tr>
          </cfoutput>

Теперь из-за Javascript значение всех этих событий будет равно 10.00, но ИМЯ поля формы будет уникальным, и это то, что я на самом деле хочу сохранить в базе данных.

Это код, который я написал:

<cfparam name="seminarBulkSignUp_List" default="">
            <cfoutput query="qSeminarWisTwo">
                <cfparam name="FORM.#SeminarWisID#" default="">

                <cfif #FORM[#SeminarWisID#]# neq "">
                    <cfset seminarBulkSignUp_List = ListAppend(seminarBulkSignUp_List, #FORM[#SeminarWisID#]#)>
                </cfif>
            </cfoutput>

            <cfset FORM.SeminarWisTitle = #seminarBulkSignUp_List#>

Итак, с помощью этого кода я запускаю запрос на ВСЕ возможные события, а затем просто проверяю по отправленной форме, чтобы увидеть, какие из них "пустые", как в не выбранных, и те, которые выбраны, я хочу добавить в список для хранения в базе данных.

Теперь это работает, поскольку позволяет мне знать, какие события были выбраны, а какие нет, но я хочу, чтобы список компилировал действительные имена ФОРМОВОГО ПОЛЯ, а не значение, которое они имеют. Как бы я это сделал?

1 Ответ

7 голосов
/ 07 марта 2012
<cfoutput>
  <cfloop list="#StructKeyList(FORM)#" index="thisField">
    My field name: #thisField#<br/>
    My field value: #FORM[thisField]#<br/>
  </cfloop>
</cfoutput>

Применить при необходимости.

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