弹性+作为应用程序参数传递时,字符被空白替换

发布于 2024-10-18 21:05:41 字数 667 浏览 0 评论 0原文

我将一个字符串参数作为 FlashVars 传递到 Flex 应用程序中,

该参数有时包含特殊字符,除了 + 符号之外,一切都显示良好,当它到达 Flex 时,它会被空白替换。

这是例如的场景。

我在 JS 中有一个局部变量,它获取一些值,对于这个示例,它可以如下所示

<script language="JavaScript" type="text/javascript">   

    var testVar = "some_test_string_that_contains_+_character";

</script>

传递 "FlashVars","test="+testVar

然后到我的 Flex 对象 AC_FL_RunContent 我在 Flex 代码中 在我编写的应用程序的初始化中

var testValue:String = application.parameters["testVar"].toString();
Alert.show(testValue);

,现在显示效果很好,只是 + 字符被替换为空白。其他字符(如 /、@$-_)不会发生这种情况,但 + 字符会发生这种情况。

任何有关这方面的帮助将不胜感激。

I am passing a string param into flex application as FlashVars

The param sometime contains special characters, everything shows fine except + sign which gets replaced by blank when it reaches flex.

Here is the scenario for eg.

I have a local variable in JS that gets some values and for this example it can be taken as following

<script language="JavaScript" type="text/javascript">   

    var testVar = "some_test_string_that_contains_+_character";

</script>

Then to my Flex object AC_FL_RunContent I pass "FlashVars","test="+testVar

In the flex code on Init of application I have written

var testValue:String = application.parameters["testVar"].toString();
Alert.show(testValue);

Now this shows fine except the + character gets replaced by blank. It doesnt happens with other characters like /,@$-_ but the + character.

Any help regarding this will be greatly appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

夜光 2024-10-25 21:05:41

来自 Adobe 文档

关于 flashVars 属性编码

flashVars 属性的值
必须经过 URL 编码。的格式
字符串是一组名称-值对
用与号 (&) 分隔。你可以
逃脱特殊且不可打印
带有百分号 (%) 的字符
后面跟着两位十六进制数
价值。您可以代表一个人
使用加号 (+) 的空格。

进一步查看 matthew Horn 的评论之一,看起来您可以使用 %2B 来传递 + 字符。

From Adobe's docs:

About flashVars properties encoding

The values of the flashVars properties
must be URL encoded. The format of the
string is a set of name-value pairs
separated by an ampersand (&). You can
escape special and nonprintable
characters with a percent symbol (%)
followed by a two-digit hexadecimal
value. You can represent a single
blank space using the plus sign (+).

Looking further down at one of the comments from matthew horn, it looks like you can use %2B to pass the + character.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文