在使用ColdFusion 9中的Flash表单时出现JavaScript错误

38

我在使用ColdFusion 9的Flash表单时遇到了问题,而这些表单在ColdFusion 8下完美运行。在浏览器中查看Flash表单时,表单元素本身显示正确,但每个字段的数据未呈现在输入元素中,并且在提交表单时也不存在。页面加载时,会出现一个错误:

964024021.mxml.cfswf:1 ReferenceError: Can't find variable: updateHiddenValue

updateHiddenValue函数是在/CFIDE/scripts/cfform.js中定义的函数,该文件已被加载到页面中。如果我使用控制台并直接运行该函数,则可以正常运行:

enter image description here

为了尝试找出原因,我启动了Charles并观察了对服务器的请求。如下面的截图所示,.js文件接收到200响应,显示它们可以正常工作,但cfswf请求会得到“连接关闭”错误,然后是200个请求。显然,cfswf请求已正确完成,否则我根本看不到Flash表单。

enter image description here

因此,我需要找出为什么会发生这些.js错误,以便使这个Flash表单正常工作。我只能假设错误源自Flash端或通过Flash Remoting (?), 我不知道如何调试此问题并使事情前进。


1
看起来它被调用了一次失败,然后成功地被调用。.cfswf文件应该是实际编译的Flash文件,对吧?不是对CFC的调用。包含updateHiddenContent()函数的js文件在哪里? - Mark A Kruger
3
丹,你是指所有Flash表格都有这个问题吗?还是只有特定的一个表格?如果是“所有表格”,你能否提供一个自包含的重现案例,供我们检查和分析。 - Adam Cameron
你使用的Flash版本是什么?在工作和不工作的版本上,你使用的浏览器是什么? - James A Mohler
你能展示一下调用函数的JavaScript代码吗?从错误信息看,你好像把它当成变量而不是函数来访问了。 - Kevin
4
我知道这完全没有建设性,但是拜托了...求你们不要再使用Flash表单了。它们造成的混乱比解决的问题还要多。 - Dave Ferguson
显示剩余8条评论
2个回答

2

在开发一个应用程序时,我遇到了同样的错误。你可能在这之前声明了另一个脚本,导致冲突。请注释掉其他所有脚本并重试。我采用了试错法来解决这个问题。我注释掉了所有脚本并运行我的应用程序,它成功地运行了。


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接