【问题标题】:save input in dialog and show in form on mainpage using cookies使用 cookie 在对话框中保存输入并在主页上以表单形式显示
【发布时间】:2013-03-18 13:45:22
【问题描述】:

我问了一个问题,在输入字段中设置 cookie 并将其显示在主页面的输入字段中。

http://stackoverflow.com/questions/15225225/set-cookie-in-jquery-dialog-and-show-selected-value-on-page-after-submit-with-po

它不显示任何东西。我的 jquery.cookie.js 工作正常,因为我使用了更多的 cookie。 也许这就是问题所在?也许第一个代码会覆盖下一个代码? 我不知道这是否相关。


当用户访问我的网站时,我会弹出一个 jquery 对话框。 http://kees.een-site-bouwen.nl/

您必须填写您的邮政编码,然后单击以继续访问该网站。 代码是:

<div id="dialog" class="hidden" title="Welkom bij OostWestRegioBest.nl">

Vul hier uw postcode in: <br /><br />
<input type="text" id="postcode">

</div>

还有我的 javascript 代码:

$(document).ready(function(){
    //story the cookie on button press
    $('#go').click(function(){
            $.cookie('postcode', $('#postcode').val());  
    });

    //retrieve the cookie on load if it's not undefined
    if(typeof $.cookie('postcode') !== 'undefined'){
            $('#postcode').val($.cookie('postcode'));
    }
});

现在我想在主页表单的文本输入中打印保存的 cookie。

希望有人可以为此提供一个很好的解决方案。

谢谢

【问题讨论】:

  • 将值 POST 到控制器并在视图文件中检索它不是更容易吗?
  • 我该怎么做?我还是 Codeigniter 的新手。
  • 点击“go”时,页面提交到哪里?
  • 到未完成的搜索页面。但 'go' 是我保存/设置 cookie 的功能。
  • id="go" 我的意思是 :)

标签: jquery codeigniter cookies jquery-dialog


【解决方案1】:

由于 cmets 中的讨论似乎并没有改变 OP 的想法,如果有人访问,我将在此处发布以供将来参考。

您不应使用 cookie 发送 POST 数据。许多用户在他们的浏览器中关闭了 cookie,这将阻止您的应用程序接收您需要的数据。

在这种情况下,作为 Codeigniter,您应该将数据提交给控制器,在变量中声明值,然后将该变量发送到您的下一个视图。

搜索视图:

// Feel free to use CI's form helper here as well
<form method="POST" action="/search"
    // whatever your form is
    <input type="text" id="postcode" name="postcode">
    <input type="submit" value="Go">
</form> 

搜索控制器:

function index() {
    // search logic

    // Grab your postcode value and declare it in a variable
    data['postcode'] = $this->input->post('postcode');

    // Load your next view and pass the data
    $this->load->view('search_results', $data);
}

结果视图:

<input type="text" value="<?php echo $postcode; ?>">

为了将来的参考,Codeigniter 提供了处理设置 cookie 的方法,因此您不必使用单独的 jQuery 库来执行此操作。如果您在使用您的网站的用户的整个会话中都需要 postcode 变量,那将是更好的方法。

【讨论】:

  • 感谢您的精彩回答。当我遇到这样的问题/项目时,我会试试这个。
猜你喜欢
  • 1970-01-01
  • 2012-11-22
  • 1970-01-01
  • 2010-11-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多