2

我的网站就像一个具有 2 种搜索类型的搜索引擎。类型 1 类型 2。当有人来到我的网站时,我只是不知道该怎么做,默认选中的类型是类型 1,如果它选择类型 2,那么即使页面被刷新,访问者仍然保持类型 2。我需要的正是来自这里的样本。

js

$(function() {
        $( "#radio" ).buttonset();
    });​

html

<form>
    <div id="radio">
        <input type="radio" id="radio1" name="radio" /><label for="radio1">Choice 1</label>
        <input type="radio" id="radio2" name="radio" checked="checked" /><label for="radio2">Choice 2</label>
        <input type="radio" id="radio3" name="radio" /><label for="radio3">Choice 3</label>
    </div>
</form>

我希望能够将checked="checked"从收音机切换到另一个或类似的东西。真的不知道。但我认为它必须用 php 或 javascript 做一些事情。

4

4 回答 4

3

您需要在某处缓存/存储设置选项(cookie、数据库、memcache(d)、redis 等)并使用用户 ID 加载。这也必须在 Javascript 中处理,因为它涉及客户端。

Cookie 参考https ://developer.mozilla.org/en-US/docs/DOM/document.cookie

对于memcache(d)、redis、SQL、文件存储:

AJAX 参考https ://developer.mozilla.org/en-US/docs/AJAX

于 2012-09-26T19:56:17.760 回答
1

并且 my_function 将发送一个 ajax 请求来打开会话以保持选中单选的值:

my_function()
{
   var value_checked = $("input[name='radio']:checked").val();
   $.ajax({
   type: 'POST',
   url: 'page.php',
   data: {'value_checked':value_checked},
   });
}

您进入 page.php $_POST['value_checked '] 并将其设置在会话变量中

于 2012-09-26T20:06:28.273 回答
1

您可以在单选按钮的 onClick 事件中定义函数:

$(document).ready(function() {
  $('radio[name=radio]').each(function() {
   $(this).click(function() {
    my_function();
    });
   });
});
于 2012-09-26T20:00:35.263 回答
0

您必须将该信息存储在 cookie 或会话中,因为web 是无状态的,并且如果回发它不会记住页面的状态,除非它被缓存在某个地方。

尝试使用jQuery cookie 插件

于 2012-09-26T20:03:19.360 回答