Apache flex 如何在cookie中设置值并从cookie中获取不与flex中的共享对象一起使用的值?
嗨,我需要通过cookies在我的登录表单中保存电子邮件id。如果我使用共享对象,我可以保存,但我的要求是需要保存在cookies中。我怎样才能节省?我从网上得到了示例代码。附加该代码`package com{Apache flex 如何在cookie中设置值并从cookie中获取不与flex中的共享对象一起使用的值?,apache-flex,flex3,Apache Flex,Flex3,嗨,我需要通过cookies在我的登录表单中保存电子邮件id。如果我使用共享对象,我可以保存,但我的要求是需要保存在cookies中。我怎样才能节省?我从网上得到了示例代码。附加该代码`package com{ import flash.external.ExternalInterface; /** * The Cookie class provides a simple way to create or access * cookies in the embedding HTML
import flash.external.ExternalInterface;
/**
* The Cookie class provides a simple way to create or access
* cookies in the embedding HTML document of the application.
*
*/
public class Cookie {
/**
* Flag if the class was properly initialized.
*/
private static var _initialized:Boolean = false;
/**
* Name of the cookie.
*/
private var _name:String;
/**
* Contents of the cookie.
*/
private var _value:String;
/**
* Flag indicating if a cookie was just created. It is <code>true</code>
* when the cookie did not exist before and <code>false</code> otherwise.
*/
private var _isNew:Boolean;
/**
* Name of the external javascript function used for getting
* cookie information.
*/
private static const GET_COOKIE:String = "cookieGetCookie";
/**
* Name of the external javascript function used for setting
* cookie information.
*/
private static const SET_COOKIE:String = "cookieSetCookie";
/**
* Javascript code to define the GET_COOKIE function.
*/
private static var FUNCTION_GET_COOKIE:String =
"function () { " +
"if (document." + GET_COOKIE + " == null) {" +
GET_COOKIE + " = function (name) { " +
"if (document.cookie) {" +
"cookies = document.cookie.split('; ');" +
"for (i = 0; i < cookies.length; i++) {" +
"param = cookies[i].split('=', 2);" +
"if (decodeURIComponent(param[0]) == name) {" +
"value = decodeURIComponent(param[1]);" +
"return value;" +
"}" +
"}" +
"}" +
"return null;" +
"};" +
"}" +
"}";
/**
* Javascript code to define the SET_COOKIE function.
*/
private static var FUNCTION_SET_COOKIE:String =
"function () { " +
"if (document." + SET_COOKIE + " == null) {" +
SET_COOKIE + " = function (name, value) { " +
"document.cookie = name + '=' + value;" +
"};" +
"}" +
"}";
/**
* Initializes the class by injecting javascript code into
* the embedding document. If the class was already initialized
* before, this method does nothing.
*/
private static function initialize():void {
if (Cookie._initialized) {
return;
}
if (!ExternalInterface.available) {
throw new Error("ExternalInterface is not available in this container. Internet Explorer ActiveX, Firefox, Mozilla 1.7.5 and greater, or other browsers that support NPRuntime are required.");
}
// Add functions to DOM if they aren't already there
ExternalInterface.call(FUNCTION_GET_COOKIE);
ExternalInterface.call(FUNCTION_SET_COOKIE);
Cookie._initialized = true;
}
/**
* Creates a new Cookie object. If a cookie with the specified
* name already exists, the existing value is used. Otherwise
* a new cookie is created as soon as a value is assigned to it.
*
* @param name The name of the cookie
*/
public function Cookie(name:String) {
Cookie.initialize();
this._name = name;
this._value = ExternalInterface.call(GET_COOKIE, name) as String;
this._isNew = this._value == null;
}
/**
* The name of the cookie.
*/
public function get name():String {
return this._name;
}
/**
* The value of the cookie. If it is a new cookie, it is not
* made persistent until a value is assigned to it.
*/
public function get value():String {
return this._value;
}
/**
* @private
*/
public function set value(value:String):void {
this._value = value;
ExternalInterface.call(SET_COOKIE, this._name, this._value);
}
/**
* The <code>isNew</code> property indicates if the cookie
* already exists or not.
*/
public function get isNew():Boolean {
return this._isNew;
}
}
}
`我怎么用这个?我需要将其与jsp集成,默认情况下,swf文件嵌入到jsp中。
如何仅保存用户名(电子邮件id)?如果用户再次输入,它将显示在下拉列表中。如何将文本输入文本传递到cookie中?请提前帮我谢谢。发布的代码使用该类通过JavaScript访问浏览器cookie。我猜你的问题是关于如何使用这个课程。给你:
// Initialize the object:
var cookie:Cookie = new Cookie("NAME OF THE COOKIE");
// Retrieve and trace the value of the cookie:
trace(cookie.value());
// Set new value for the cookie:
cookie.value = "NEW VALUE";
我无法回答有关下拉列表的其余问题。你需要更具体地说明你的实际问题是什么 嗨,Ilike猩猩们,谢谢你们的回复饼干叫什么名字?我是否可以以cookie的名称向文本输入{textinputId.text}中输入任何文本,以及如何再次检索该值以像jsp cookie一样显示在文本输入中。如果你能帮助我,那将是非常有帮助的。提前谢谢。饼干的名字应该是固定的。浏览器将Cookie存储为名称-值对。所以用一个众所周知的名字来命名它。文本输入的值将进入值字段。要访问该值,请使用值的getter。好的,我知道了,谢谢,我如何在上下文菜单(或)列表中显示cookie值,当我输入第一个字符时,总名称应该是在列表或下拉列表中显示它?你知道怎么做吗?首先,如果我的以上回答帮助你解决了你的问题,请接受我的回答。第二,你要问的似乎是一个单独的问题,所以请打开一个新问题。