带有嵌入式 cfloop 的 Coldfusion Form 给出逗号分隔值

问题描述 投票:0回答:1

以下表格是针对较大项目的过于简化的版本:

如果我选择要删除的行,我只想显示我选择的值,而不是 1,2,3,4。因此,如果我选择删除第 A2 B2 ROW: 2 行,我应该只得到 2! cfloop 正在将所有值添加到测试变量中。

Form before processing

必须有一个简单的解决方案!

<h1>HELLO!</h1>
<cfif StructKeyExists(FORM,"delete")>
    <h1><cfoutput>#FORM.thisRow#</cfoutput></h1><cfabort>
<cfelse>
    <cfset count  = 4>
</cfif>

<cfoutput>
    <cfform action="test4.cfm" id="updateForm2" method="post">
        <input type="hidden" name="delete" value="delete">
        <table>
            <cfloop index="row" from="1" to="#count#">
                <cfset test=#row#>
                <tr>
                    <td>A#row#</td>
                    <td>B#row#</td>
                    <td>ROW: #row#</td>
                    <td><input type="submit" name="submit" value="DELETE"></td>
                </tr>
                <input type="hidden" name="thisRow" value="#test#">
            </cfloop>
        </table>
    </cfform>
</cfoutput>
<h1><cfoutput>#test#</cfoutput></h1>

这是我得到的:

After pressing any delete button

arrays forms coldfusion cfloop
1个回答
0
投票

表单中所有隐藏的输入值都将被提交。您可以在删除按钮上设置名称和值

<h1>HELLO!</h1>
<cfif StructKeyExists(FORM,"delete")>
    <h1><cfoutput>#FORM.thisRow#</cfoutput></h1><cfabort>
<cfelse>
    <cfset count  = 4>
</cfif>

<cfoutput>
    <cfform action="test4.cfm" id="updateForm2" method="post">
        <input type="hidden" name="delete" value="delete">
        <table>
            <cfloop index="row" from="1" to="#count#">
                <cfset test=#row#>
                <tr>
                    <td>A#row#</td>
                    <td>B#row#</td>
                    <td>ROW: #row#</td>
                    <td><input type="submit" name="thisRow" value="#test#"></td>
                </tr>
            </cfloop>
        </table>
    </cfform>
</cfoutput>
<h1><cfoutput>#test#</cfoutput></h1>
© www.soinside.com 2019 - 2024. All rights reserved.