Coldfusion中的动态单选按钮组

时间:2010-09-10 15:27:15

标签: loops coldfusion button radio

用户将输入他们的身份证号码,然后将显示与此身份证号码绑定的帐户(单选按钮)。他们可以返回1个甚至10个帐户(单选按钮)。我需要他们 将他们的帐户更新为Y,N。帐户ID是组成广播组的内容。现在我需要知道通过这些单选按钮循环的人,看看他们选择了什么。

<cfif isDefined('FORM.bnt2')>
    <cfloop index="i" list="#form.fieldnames#">
        <cfquery  name="accept" datasource="#request.dsn#">
            UPDATE opt SET 
            f14 = '#evaluate(i)#'
            WHERE f4 = '#FORM.id#'
        </cfquery>
    </cfloop>
</cfif>                                                              

<cfform  name="frm2" id="form2" method="post" action="">
    <cfinput type="radio" name="#f5#" value="y"> 
    <cfinput type="radio" name="#f5#" value="n">
    <cfinput type="hidden" name="id" value="#f4#" />
    <cfinput name="bnt2" type="image" class="btn" src="images/accept.gif" value="Submit"/>

2 个答案:

答案 0 :(得分:1)

不要使用评估!

执行使用cfqueryparam!

修复这些变量名称,f5btn2等不是好名字。


无论如何,我不完全确定你在做什么,但这里有一段代码片段:

<cfoutput>
<cfloop index="CurField" list="#Form.FieldNames#">
    <br/>#CurField#=#XmlFormat(Form[CurField])#
</cfloop>
</cfoutput>

这应该可以为您提供使您的工作成功所需的一切。

注意XmlFormat用于显示 - 通常不在查询中(在数据库中存储数据),而是在向浏览器显示时。 (如果您愿意,也可以使用HtmlEditFormat。)

答案 1 :(得分:0)

谢谢大家的帮助,这是我的最终解决方案。

<cfif isDefined("FORM.bnt2")>
<cfloop index="id" list="#form.listofids#" delimiters=",">
<cfquery  name="accept" datasource="#request.dsn#">
UPDATE opt SET
F14 = '#Evaluate("form.select_#id#")#'
WHERE f5 = '#id#'
</cfquery>
</cfloop>
</cfif>


<cfform  name="frm2" id="form2" method="post" action="">
<cfoutput query="accountCheck" >
<cfinput type="radio" name="select_#f5#" value="y" required="yes" validateat="onsubmit" message="A value of Yes or No is required.">
<cfinput type="radio" name="select_#f5#" value="n" required="yes" validateat="onsubmit" message="A value of Yes or No is required.">
<cfinput type="hidden" name="listofids" value="#ValueList(accountCheck.f5)#" >
</cfoutput>
<cfinput name="bnt2" type="image" class="btn" src="images/accept.gif" value="x"  style="float:right;" />
</cfform>