2013-03-28 83 views
0

我有一个用PHP编写的数据库应用程序(jQuery/JS在前端),它具有双语标签/文本。目前,人们只能在维护页面上更改自己的语言(表单提交,然后PHP用新的语言选择更新会话变量),但用户希望我添加一个语言下拉菜单,该语言下拉菜单将出现在所有页面的角落。当页面包含表单时,我不希望用户在发生更改语言时丢失部分输入的数据,因此我需要以某种方式保存/恢复表单数据。有没有简单的方法来做到这一点?我知道我可以使用jQuery来序列化表单,但那又如何?发送添加到URL并在PHP中选择它?那又怎么样?写一些例程来循环表单域并正确处理它们(输入,选择,单选框等等都是不同的)?似乎应该有一个更简单的方法。我不介意限制自己使用HTML5支持的解决方案或添加jQuery插件。语言环境更改后保存/恢复表单数据

回答

0

我的建议是:

提交语言和任何改变语言使用$.ajax$.post

+0

AJAX在这里并不相关,因为我需要刷新整个页面,以便PHP将正确的语言文本放在标记的所有位置。 (使用jQuery替换整个页面的所有文本比保存表单数据要花费更多的工作。) – OsakaWebbie 2013-03-28 11:43:36

1

如何localStorage服务器时想要的用户数据?

如果用户填写了任何输入字段,请将其保存到localStorage并在用户提交表单后删除数据。

+0

或者sessionStorage - 是的,这两个就是为什么我在我的问题中提到了HTML5。但我认为这种需求会很普遍,以至于会有一些预先写好的函数或某些东西,而不是我必须编写和调试代码来收集和存储所有字段值到存储然后填充/选择/检查存储中的每个表单字段。是的,我很懒,但有人知道一个捷径吗?我一直在使用谷歌搜索,但我还没有碰到任何东西。正如我所说,jQuery可以在一个函数调用中序列化表单,但恢复更麻烦。 – OsakaWebbie 2013-03-28 12:50:51

+1

我还没有偶然发现任何类似的东西。 jQuery使这些事情变得很容易,所以我不希望这种插件花费2个多小时。 祝你好运! – Kristian 2013-03-30 14:49:23

+0

我听到你的声音。我不是一个jQuery专业版,所以它可能需要我多一点时间,但是,这是可行的。如果事情已经存在,我只是不想重新发明轮子。谢谢! – OsakaWebbie 2013-03-31 07:41:20