在Coldfusion中提交表单后检查TextField更改

在Coldfusion中提交表单后检查TextField更改,coldfusion,submit,textfield,onchange,Coldfusion,Submit,Textfield,Onchange,我有显示数据库条目并允许编辑/删除的代码 我试图在提交时找到一些方法来查看某个特定字段是否已被更改,因此,如果该字段的旧数据未被任何数据库条目引用,我可以将其删除。有什么办法吗 对第一条评论/编辑的回应:在这里列出这个问题的代码有点困难,但我将尝试获取一些有帮助的代码片段 <td>Upload File:</td> <td> <input type="file" name="txtName" size="50" /> </td>

我有显示数据库条目并允许编辑/删除的代码

我试图在提交时找到一些方法来查看某个特定字段是否已被更改,因此,如果该字段的旧数据未被任何数据库条目引用,我可以将其删除。有什么办法吗

对第一条评论/编辑的回应:在这里列出这个问题的代码有点困难,但我将尝试获取一些有帮助的代码片段

<td>Upload File:</td>
<td>
    <input type="file" name="txtName" size="50" />
</td>
<cfif url.filesid neq "0">
<td>Or Use Server File:</td>
    <td>
    <select name="ddlFilesNames">
        <option value="" selected></option> 
            <cfoutput query="qfiles">
                <option 
                  value="#qfiles.name#" 
                  #iif(qfiles.name eq recEditFiles.fileName,DE("selected"),DE(""))#
                >#qfiles.name#</option>
            </cfoutput>                         
    </select>
    </td>
</cfif>
这是我需要检查的两个字段,当点击编辑按钮时,选择下拉列表显示当前服务器文件,但在编辑过程中,他们可以通过浏览选项向文本字段添加文件以上载新文件,也可以从下拉列表中选择另一个文件,然后点击更新按钮提交更改

当更新按钮被点击时,我需要以某种方式检查字段是否被更改


我觉得其中一个主要问题是,一旦按下按钮,就会调用一个javascript方法,到目前为止,我一直没有成功的做法是在javascript方法中使用coldfusion,每次我尝试这样做或反之亦然,都会破坏程序。

一些代码会有所帮助。听起来您有一个数据库,您想知道用户是否从正在输入的DB记录中删除了该文件

通常,我通过显示与记录关联的当前文件和一个删除按钮或图标来处理此问题,该按钮或图标允许您删除该图像。我还包括一个replace或upload new或upload other按钮,允许用户选择另一个文件来替换当前文件,或将文件添加到没有文件的记录中


如果你不这样做,那么你就无法知道用户是否不想再次上传同一个文件,因为它已经存在了,为什么他们会这样做?或者,如果他们打算让您的系统删除该文件及其与数据库记录的关联。

比较表单上的字段是否已从原始字段更改的一种简单方法是将原始数据包含在隐藏表单字段中,然后在“操作”页面上比较表单字段及其隐藏对应字段的值,查看是否他们变了

表格:

<input type="text" name="myField" value="#q.myField#" />
<input type="hidden" name="myField_original" value="#q.myField#" />
行动:

<cfif form.myField NEQ form.myField_original>
  <cfset fieldHasChanged = true />
<cfelse>
  <cfset fieldHasChanged = false />
</cfif>

如果您与表单字段名称一致,则可以很容易地在操作页面上创建一个循环来进行这些比较。

谢谢,我曾经尝试过这样做,但我对这种语言还是很陌生,因此无法使其正常工作。现在好像在工作。