繁体   English   中英

Android中的Javascript“document.cookie”?

[英]Javascript “document.cookie” in Android?

我需要帮助如何正确使用javascript:“ document.cookie ”或如何在Android网页浏览器中从javascript编写cookie?

我确保在设置中启用了cookie。 当我使用“navigator.cookieEnabled”检查时,它也返回true。

我有一段javascript代码,如下所示,无处不在(例如PC浏览器,iPhone),但在Android中不起作用。

function createCookie(name) {

// cookies expired in 1 year.

var expDate = new Date();

expDate.setDate(expDate.getDate() + 365);

expDate = expDate.toGMTString();

var el = document.getElementById(name);

document.cookie = name + '=' + escape(el.value) + '; path=/ ;expires=' + expDate;

document.cookie = name + '-idx=' + escape(el.selectedIndex) + ';path=/ ; expires=' + expDate;

//alert('cookie : ' + document.cookie);
}

当我在最后一行代码中打开“ 警报 ”评论时,Android将显示空白,而所有其他浏览器显示我刚刚编写的cookie的内容。

请帮忙。 谢谢。

我有这个东西工作,对于Android 2.2,javascript的document.cookie工作正常,只需确保在你的Webview ... javascript启用如下:

yourWebViewVariable.getSettings().setJavaScriptEnabled(true);

对于Android 3.1,只需将其添加到您的java文件onLoadInit:

CookieManager.setAcceptFileSchemeCookies(true); //这是专门使其工作的行,因此其他行是可选的

CookieManager cookieManager = CookieManager.getInstance(); cookieManager.setAcceptCookie(true); cookieManager.acceptCookie();

此外,这里有一些我在尝试解决此错误时发现的链接,这对于想要将变量从Javascript发送到Webview(原生Android语言)的其他人有帮助,反之亦然。

http://android-er.blogspot.com/2011/10/run-android-java-code-from-webpage.html

http://android-er.blogspot.com/2011/10/call-javascript-inside-webview-from.html

谢谢,古德勒克!

好的,现在我真的得到了它(window.cookie,哈哈)。

只需删除path定义中的空格即可。 似乎在我的手机上工作。 编辑:将所有字符串放在一行上,我认为它搞砸了解析。

function createCookie(name) {

// cookies expired in 1 year.

var expDate = new Date();

expDate.setDate(expDate.getDate() + 365);

expDate = expDate.toGMTString();

var el = document.getElementById(name);

document.cookie = name + '=' + escape(el.value) + '; path=/; expires=' + expDate;

document.cookie = name + '-idx=' + escape(el.selectedIndex) + '; path=/; expires=' + expDate;

//alert('cookie : ' + document.cookie); }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM