2013-02-06 71 views
1

我在foreach循环中有许多单选按钮,并且它在onclick上转到相应的url。我希望选中的单选按钮在使用php或javascript刷新页面后保持选中状态。对不起我的英文破碎。如何在页面刷新后检查单选按钮?

<ul> 
<?php foreach($companyStatus as $statuses => $status): ?> 
    <li> 

    <input 
    type="radio" 
    value="<?php echo $url?>" 
    name="group1" 
    onclick="if(this.checked){window.location=this.value;}" 
    ><?php echo htmlspecialchars($status['fldStatusName'])?> 

</li> 
<?php endforeach;?> 
</ul> 
+1

您是指REFRESH后还是POSITION后的表格? –

+0

没有形式只是url。从数据库中获取数据后 – nohan

+0

含义是什么?我认为你需要更多地描述这一点。 –

回答

1

设置cookie的JavaScript(的onclick的单选按钮的),并包括一个这样的脚本:

window.addEventListener('load', function() { READ COOKIE FUNCTION HERE }, false); 

参见如何读取特定的Cookie Get cookie by name。然后,根据Cookie中的状态设置单选按钮。

//编辑:一些更多的细节

  1. 绑定事件侦听器的圆形按钮设置一个cookie document.getElementById('radiobuttonid').addEventListener('click', function() { SET COOKIE HERE }, false);(见http://www.w3schools.com/js/js_cookies.asp如何设置cookie)
  2. 上述监听器添加到您的html页面window.addEventListener('load', function() { READ COOKIE FUNCTION HERE }, false);

的READ COOKIE FUNCTION该处包括读取单选按钮cookie值和设定检查属性=“选中”

要获得更多的信息,你可以参考http://www.somacon.com/p143.php(也有一些sorcecode,但我没有检查它)。

+0

Thanx Martin,但它对我来说是全新的,你可以将它扩大一点。 – nohan

+0

我希望现在更清楚。底部提到的页面也有一些代码(用于读取和设置单选按钮值)。 –

0

您需要将单选按钮的选中状态记录在cookie中或作为会话变量或平面文件或数据库中。哪种方法最好取决于你自己,取决于你想让脚本“记住”它的时间长度,有多少个单选按钮可以“记住”,你希望记住多少“好”(例如:使用a因为客户可以很容易地将其删除,因此Cookie不会是长期的最佳方式)

相关问题