我有三个单选按钮和4个复选框。
我希望在浏览器刷新后保留单选按钮和复选框值。
我不想使用cookies(由于某些其他原因)。
有人可以帮助我吗?
答案 0 :(得分:1)
我不认为这是可能的,因为HTTP是无状态的,cookie或服务器端脚本提供“状态”。
答案 1 :(得分:1)
您可以改用会话。
编辑:我的不好,我读的是PHP而不是Javascript。但是,我在Google快速搜索后找到了这个链接。 Session variables without cookies in JS答案 2 :(得分:1)
您可以使用哈希网址。
像这样的东西(不记得你是否还需要指定页面的名称,但我不这么认为):document.location.href = '#radio1=1&radio2=0'
哈希表示它只是指向当前页面上的内容而不是指向另一个页面(并且浏览器在地址字段中更新它,因此如果用户重新加载页面,它仍然会在那里)。然后你也可以从javascript中读取并设置它。
不如使用服务器端会话,但它是一个选项:)
答案 3 :(得分:1)
如果您使用表单来触发新页面加载,则可以使onsubmit事件调用javascript函数来更改窗口位置并附加存储单选按钮值的URL参数。当页面加载时,您将从URL读取参数值。像这样:
<script type="text/javascript">
function changeURL(){
var str = window.location+"?radio1=1";
window.open(str);
return false;
}
</script>
...
<FORM onsubmit="changeURL();">
<INPUT TYPE="submit" value="click me" >
</FORM>
答案 4 :(得分:1)
正在开发一种新工具,允许网站在客户端计算机上存储持久数据。在某些浏览器中已经可用,这允许您保存收音机和复选框状态,并在用户访问您的站点时恢复和恢复它们。有关详细信息,请参阅此处https://developer.mozilla.org/en/DOM/Storage和此处http://dev.w3.org/html5/webstorage
答案 5 :(得分:0)
页面上有一些JS将所有单选按钮/复选框事件提交给服务器,并将其状态存储在数据库中。当页面(重新加载,发送此状态作为HTML的一部分。