【发布时间】:2013-01-14 10:39:30
【问题描述】:
Flex 应用程序通过 RemoteObject 执行远程 ColdFusion 方法。远程方法参数是 VO。 VO 的数字字段之一是 NaN。 CF端如何识别NaN?
我尝试了以下方法:
这会返回“真”:
isDefined("vo.numeric_field_NaN")
isNumeric(vo.numeric_field_NaN)
这会返回“假”:
isNull(vo.numeric_field_NaN)
所以,我使用了以下表达式,它在 vo.numeric_field_NaN 为 NaN 时返回“true”:
((vo.numeric_field_NaN GT 0) AND (vo.numeric_field_NaN LT 0))
如果有办法更明确地确定 NaN,请提出建议。
PS:
我尝试将此值写入文件,但写入的是“?”而且我没有成功找到正确显示符号的编码。我已经尝试嗅探器显示对“%FD”的请求。
【问题讨论】:
-
当flash变量为数字时vo.numeric_field_Nan返回什么,当flash变量不是数字时返回什么?
-
if (vo.numeric_field_NaN EQ "NaN")? -
如果你转储 vo.numeric_field_NaN 会发生什么?它是否显示 NaN 或其他值?我很确定我以前在这种情况下使用过 isNumeric 函数。您使用的是哪个版本的 ColdFusion? (根据一些谷歌搜索,您看到的问题在 CF7 中;但在 CF8 之后已修复)
-
邓肯,这行不通。请看 isNumeric(vo.numeric_field_NaN) 返回“true”
-
@www.Flextras.com,我无法转储它,因为该方法应该远程启动以通过 AMF 传递 NaN。我正在使用 ColdFusion9。谢谢
标签: apache-flex coldfusion nan remoteobject