表单提交未通过按钮名称

时间:2017-04-24 15:24:51

标签: javascript jquery html forms coldfusion

我有一个表单,我试图阻止多个提交:

<form id="autoSumForm" name="autoSumForm" method="post" action="add_ticket.cfm" enctype="multipart/form-data" >

表单有两个保存按钮:

<input class="saveButton" tabindex="0" type="submit" name="save2" id="save2" value="Save This Ticket" disabled="true" onclick="this.disabled=true;this.value='Please Wait...'; this.form.submit();"/>

<input class="saveCloseButton" tabindex="0" type="submit" name="save1" id="save1" value="Save and Close" disabled="true" /><!---Save and close ticket --->

我有这个脚本,用于在点击一个按钮后禁用和更改按钮的值。

<!--- Prevents submitting form twice --->
        $('#autoSumForm').submit(function()
            {
            $("input[type='submit']", this)
            .val("Please Wait...")
            .attr('disabled', 'disabled');
            return true;
        });

但奇怪的是,当我使用该脚本时,它不会将按钮名称传递给我的操作页面。我知道,因为我使用if语句来检查单击了哪个提交按钮,所以我可以正确地重定向。如果我禁用该脚本,重定向工作正常,但启用后它会跳过我的if语句。会导致什么?

这是我的重定向if语句:

<cfif StructKeyExists(form,"save1")>
    <!---Send user back to tech view screen --->

     <!--- Updated Ticket Lock Fields in Service_Ticket table--->
        <cfquery name="ticket_lock_update" datasource="#datasource#">
        update service_ticket
        set edit_lock=0, last_edited=<CFQUERYPARAM Value="#CreateODBCDateTime(Now())#" cfsqltype="CF_SQL_TIMESTAMP">, last_edited_by=<CFQUERYPARAM Value="#techID#">
        where ticket_id= <CFQUERYPARAM Value="#form.ticket_id#">
        </cfquery>

    <cflocation url="dashboard.cfm">    
</cfif>

<cfif StructKeyExists(form,"save2")>
    <!---Save ticket and send user back to the same ticket screen --->

     <!--- Updated Ticket Lock Fields in Service_Ticket table--->
        <cfquery name="ticket_lock_update" datasource="#datasource#">
        update service_ticket
        set edit_lock=1, last_edited=<CFQUERYPARAM Value="#CreateODBCDateTime(Now())#" cfsqltype="CF_SQL_TIMESTAMP">, last_edited_by=<CFQUERYPARAM Value="#techID#">
        where ticket_id= <CFQUERYPARAM Value="#form.ticket_id#">
        </cfquery>

    <cflocation url="edit_serviceticket.cfm?ticketID=#form.ticket_id#&techID=#techID#&message=2&TT=bot">    
</cfif>

1 个答案:

答案 0 :(得分:1)

在表单中添加隐藏字段。在提交函数中添加一些内容,使其具有适当的值。在您的操作页面上处理该字段。