【问题标题】:Remember selection and redirect user to a visited subdomain记住选择并将用户重定向到访问过的子域
【发布时间】:2013-12-12 14:17:29
【问题描述】:

当用户访问 example.com 时,他会看到许多其他子域(城市)可供选择。我想让用户选择或类型(在地址栏上)说 a.example.com,在他下次访问 example.com 时,他应该被重定向到 a.example.com。当他访问 b.example.com 时,他应该被重定向到 b.example.com。

我找到了这个代码Drop down menu to remember selection and redirect user,它与我需要的很接近。我想删除下拉菜单(表单)并替换为列出所有城市的单个页面。我测试了下面的代码,重定向不准确。我需要更健壮和快速的脚本。任何帮助将不胜感激。

<script type="text/javascript">
if (localStorage && localStorage.country) {
    location = localStorage.country;    
}

function formChanged(form) {
    var val = form.options[form.selectedIndex].value;
    if (val !== 'non-value') {
      if (localStorage) {
        localStorage.country = val;
      }
      location = val;
    }
}
</script>

<FORM NAME="form1">
  <select onchange="formChanged(this);" NAME="country" SIZE="1">
    <OPTION VALUE="non-value">Select Country
    <OPTION VALUE="chile">Chile
    <OPTION VALUE="colombia">Colombia
    <OPTION VALUE="bolivia">Bolivia
  </select>
</FORM>

【问题讨论】:

    标签: javascript redirect subdomain


    【解决方案1】:

    这是您使用 cookie 的时候。

    function setSelection(elem){
      var exdate=new Date();
      exdate.setDate(exdate.getDate() + 99999); // A really not time, AKA never
      var c_value=escape(elem.value) + exdate.toUTCString();
      document.cookie="selection=" + c_value;
    }
    

    参考此处获取值,然后您可以使用它。如您所见,以上内容几乎是页面的复制粘贴。 http://www.w3schools.com/js/js_cookies.asp

    【讨论】:

    • 任何解决方案@David?谢谢
    • 什么意思?
    • 好吧,用我上面给你的,看看你能不能写下后半部分。如果遇到困难,请用代码报告。假设您可以按照说明进行操作,您应该会发现它相当简单。
    • 我不知道从哪里开始。能写下后半段吗?谢谢。
    • 我会修复下半场,但你必须先试一试。如果您希望有人为您编写代码,那么您必须付钱给他们。不要刻薄,但反复试验是你学习的方式。
    猜你喜欢
    • 2015-08-14
    • 1970-01-01
    • 1970-01-01
    • 2012-12-02
    • 1970-01-01
    • 2018-06-27
    • 1970-01-01
    • 2017-01-26
    • 2017-05-17
    相关资源
    最近更新 更多