单击提交时计算每条记录的计数?

时间:2014-06-12 18:44:55

标签: coldfusion

我有一个输出评论结果的表单,它可以不止一个。 我可以立即批准这些评论,但我要做的就是成功 可以选择一次提交1条评论或一次提交所有评论。 最初我写这个表单是为了“提交全部”,所以现在添加一个提交 根据评论,我也有一些错误。

我知道因为每次我提交评论(1评论),它仍然在寻找所有其他评论 我没有提交。 我认为自从txtTotalRecords = Mush2.Recordcount以来,它试图找到它 其他未提交的记录。 我只是想不通如何改变它以使其工作。

在我获得的表单上执行cfdump,这意味着要提交11条评论。 enter image description here

我如何能够更改RecordCount以接收每个记录?

<cfparam name="FormSubmit" type="string" default="FormNotSubmitted">
<cfif isDefined("form.submit")><cfset FormSubmit = "FormSubmitted"></cfif>
<cfif isDefined("form.submit1")><cfset FormSubmit = "FormSubmitted1"></cfif>
<!--- Begin Content ================================================== --->
<cfif FormSubmit eq "FormNotSubmitted" || FormSubmit eq "FormNotSubmitted1" >
<form method="post" action="cse_execoffice_pending.cfm" name="review_comments">
<cfoutput>
<input type="hidden" name="txtApprovedBy" value="#GetCurrentUser.emp_id#">
<!-- count the records that come in from the pending -->

</cfoutput>
<cfoutput query="Mush3">
<form method="post" action="cse_execoffice_pending.cfm" name="review_onecomment">
<input type="hidden" name="txtTotalRecords" value="#Mush2.Recordcount#">
    <hr>
        <div class="comments_approvaldecision">
            <p>

            <CFDUMP VAR=#response_id#>
            <input type="hidden" name="txtResponseID#mush2.CurrentRow#" value="#response_id#">
            <input type="radio" name="execoffice_status#mush2.CurrentRow#" id="approve#CurrentRow#" value="1" checked="checked"> <label for="approve#CurrentRow#">Approve</label><br>
            <input type="radio" name="execoffice_status#mush2.CurrentRow#" id="deny#CurrentRow#" value="2"> <label for="deny#CurrentRow#">Deny</label>
            </p>
            <p>&nbsp;</p>
            <p>
            <input type="radio" name="star#mush2.CurrentRow#" id="givestar#mush2.CurrentRow#" value="0" checked="checked"> <label for="givestar#CurrentRow#"></i> Give Star!</label><br>
            <input type="radio" name="star#mush2.CurrentRow#" id="denystar#mush2.CurrentRow#" value="1"> <label for="denystar#CurrentRow#"></i> No Star</label>
            </p>
        </div>

    </div>
    <input type="submit" name="Submit1" value="Submit">
</form>
</cfoutput>

<p><input type="submit" name="Submit" value="Submit"></p>
</form>

</cfif>
<cfdump var="#form#">

<cfif FormSubmit eq "FormSubmitted" || FormSubmit eq "FormSubmitted1">
    <!--- Get Form Values --->
    <cfloop from="1" to="#txtTotalRecords#" index="j">
    <h2>test</h2>
        <cfset  response_id[j]  = #Trim(form["txtResponseID" & j])#>
        <cfset  execoffice_status[j]    = #Trim(form["execoffice_status" & j])#>
        <cfset  star[j] = #Trim(form["star" & j])#>
        <cfset  commentpositive[j]  = #Trim(form["txtCommentPositive" & j])#>
        <cfset  commentnegative[j]  = #Trim(form["txtCommentNegative" & j])#>
        <cfset  commentpositivereReplace[j] = reReplace(commentpositive[j], '\n', '<br>', 'ALL')>
        <cfset  commentnegativereReplace[j] = reReplace(commentnegative[j], '\n', '<br>', 'ALL')>
    </cfloop>
 ......... more code...

1 个答案:

答案 0 :(得分:1)

我相信您遇到错误的代码不在此页面上列出的示例代码中。

我假设你正在根据form.txtTotalRecords进行一个to / from循环。

您想要做的是遍历您的表单项,寻找特定的部分表单名称。

类似的东西:

<cfloop list="form.fieldnames" index="i">
    <cfif left(i,13) IS "txtResponseID">
        <cfset thisID = replaceNoCase(i,"txtResponseID","")>
        <cfquery>
            UPDATE myTable
            SET approve = <cfqueryparam value="#form["execoffice_status" & thisID]#">
            WHERE ID = <cfqueryparam value="#thisID">
        </cfquery>
    </cfif>
</cfloop>