Javascript 如何运行存储在cookie中的js函数
我在一个网站上有一个部分,它有多个使用ajax的页面。我想运行一个存储在cookie中的js函数,这样我可以在从几个选择框进行一些修改后刷新页面内容,并保持在同一页面上。在cookie中,我存储了一个包含分页信息的函数,以及所选的月份和年份,看起来像pontaje2,1,72015。 cookie的名字是pagina。 所以我想运行存储在cookie中的函数。 我认为应该是这样的:Javascript 如何运行存储在cookie中的js函数,javascript,function,cookies,Javascript,Function,Cookies,我在一个网站上有一个部分,它有多个使用ajax的页面。我想运行一个存储在cookie中的js函数,这样我可以在从几个选择框进行一些修改后刷新页面内容,并保持在同一页面上。在cookie中,我存储了一个包含分页信息的函数,以及所选的月份和年份,看起来像pontaje2,1,72015。 cookie的名字是pagina。 所以我想运行存储在cookie中的函数。 我认为应该是这样的: var pagina = getCookie("pagina"); new pa
var pagina = getCookie("pagina");
new pagina;
我在控制台中得到这个错误:uncaughttypeerror:string不是函数
我需要的实际结果是新的pontaje2,1,72015
你能帮我做这件事吗 首先,我认为正确的解决方案不是将函数存储在cookie中,而是存储值并将其发送给函数 如果您确实想运行从cookie检索的字符串模式的javascript代码,可以使用: 评估 setTimeout javascriptString,毫秒
但您应该考虑安全性,因为该代码来自客户端,而您实际上没有控制它的值。 你可以评估它,但这是一个非常糟糕的主意,而且有一个很大的安全漏洞
var pagina = getCookie("pagina");
eval("new "+pagina);
你必须重新考虑你的代码或工作流程,这是一个非常糟糕的主意。总是有评估,但也有Ew。为什么不直接存储数据?不要这样做。如果您可以通过JavaScript访问cookie,那么其他JavaScript程序也可以。任何人都可以更改cookie的内容并插入任意JavaScript,然后对其进行评估。哎呀,蜜蜂阿姨,我给你一个烹饪技巧:不要闻到XY问题的味道。这是一个非常糟糕的主意,因为它会产生一系列安全问题,你肯定不想盲目执行来自用户的任何东西。这里的人们可能会做一些恶意的事情。谢谢大家的评论和回答。我存储了这些值,并像这样使用它们:var paginaPTrepartizare=getCookiepaginaPTrepartizare;var res=paginaPTrepartizare.split,;新庞塔杰雷斯[0],决议[1],决议[2],决议[3];具有此值的cookie:2,1,72015