2015-01-08 3 views
2

У меня есть форма, которая позволяет пользователю добавлять соавторов, поэтому я пытаюсь пройти через эти поля (если они существуют), но, похоже, не может получить значения. «coauthorNo» - скрытое поле ввода, которое существует только в том случае, если пользователь добавляет 1 или более соавторов. Я тестирую cfoutput на своей странице, чтобы узнать, могу ли я получить значения, но пока не повезло. Это работает на сервере Coldfusion 10.cfloop через поля динамической формы

<cfif IsDefined("FORM.coauthorNo")>  
    <cfset coAuthCount = listLen("#FORM.coauthorNo#", ",")> 

      <cfloop from="0" to="#coAuthCount#" index="i"> 
       <cfset CoAuthF = "#FORM['CoAuthFirstName'&i]#"> 
       <cfset CoAuthL = "#FORM['CoAuthLastName'&i]#"> 

       <cfoutput>CoAuth's: #CoAuthF#, #CoAuthL#,</cfoutput> 
      </cfloop> 
</cfif> 

Редактировать: Изменено значение cfloop от значения до 1 и фиксировано. Мои динамически созданные поля форм начинаются с 1 по 0, т. Е. CoAuthFirstName1

+0

Это выглядит хорошо .. можете ли вы поделиться своим кодом формы, как cf-материалом, так и визуализированным материалом? Что происходит, когда вы выгружаете '# form.fieldnames #', когда у вас есть некоторые соавторы? –

+1

Шаг 1 - посмотрите ваши данные. cfdump область формы. –

+2

Какая ошибка вы получаете? Что не работает, что вы ожидаете работать? Вы не указали нам имена полей формы. Без этой информации, как мы можем вам помочь? –

ответ

2

FYI нет необходимости в этом ригамароле. Вы можете легко просмотреть список.

<Cfset lCount = 0/>  
<cfif IsDefined("FORM.coauthorNo")>  

       <cfloop list="#form.coauthorNo#" index="i"> 
        <cfset CoAuthF = FORM['CoAuthFirstName' & lCount]> 
        <cfset CoAuthL = FORM['CoAuthLastName' & lCount]> 

        <cfoutput>CoAuth's: #CoAuthF#, #CoAuthL#,</cfoutput> 
        <Cfset lCount++/> 
       </cfloop> 
    </cfif> 

И получить в привычку за исключением признаков фунт, когда вы не выводить материал на страницу или передавая атрибут тега как cfloop. Это делает код более чистым.

+0

Спасибо, Марк ... Мы определенно стремились. +1 –

+0

Ха - хорошо, все говорили это, поэтому я просто записал его :) –

+0

За исключением того, что это не работает в моей настройке. Спасибо за ввод, хотя. – TheRanch

Смежные вопросы