javascript - 使用 Javascript 根据 URL 参数重定向到特定网页

标签 javascript html url url-rewriting

我有一个简单的 .htm 网页,保存在不同的文件夹中,用于处理不同的语言。

en 文件夹内的 default.htm(en\default.htmde\default.htm 等)

我需要根据 URL 参数重定向到特定网页,即如果用户有

指定http://localhost/website/default.htm?lang=de,我需要将他重定向到

de\default.htm 文件。即德语网页。

如果是 ASPX 页面,我会使用 ResourceManager 轻松完成这项工作

以及使用 .NET 提供的 Request.QueryString 选项的适当 .resx 文件

BCL。然而,由于我使用的是纯 HTML 页面,我没有编写客户端的专业知识

像 javascript 这样的辅助脚本来查询 URL 参数并将用户重定向到

必填页面。

问题:

任何人都可以指导我如何使用任何形式的客户端脚本来实现相同的目标

实现重定向??我在哪里调用脚本函数?

即查询每个post事件的参数。??

非常感谢

最佳答案

您可以使用 JavaScript 通过以下行轻松获取参数列表。

var paramArray = window.location.search.substring(1).split("&")

这将构建查询字符串参数的数组。从那里,您只需添加逻辑来查找您在问题中指定的参数,并使用适当的重定向

window.location.href = '某个 URL';//使浏览器使用新的 URL 进行刷新

示例:

function getQueryStringArray(){
    var assoc=[]; 
    var items = window.location.search.substring(1).split('&'); 
    for(var j = 0; j < items.length; j++) { 
       var a = items[j].split('='); assoc[a[0]] = a[1]; 
    }
    return assoc;
}

//point at which you want to determine redirection
var qs = getQueryStringArray();
var url = '';
if (qs.lang !== 'undefined' && qs.lang) {
   switch (qs.lang) {
      case 'en':
         url = 'blah';
         break;
      case 'de': 
         url = 'meh';
         break;
   }
   window.location.href = url; //reroute
 }

关于javascript - 使用 Javascript 根据 URL 参数重定向到特定网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11823784/

相关文章:

javascript - 如何覆盖 Connect/Express 请求 uri

javascript - 如何停止这个 setInterval 函数?

html - 在跨度之间 Bootstrap 奇怪的空间

javascript - 使用 JS 检查动态内容的可见性

html - 更改 css 以扩展内容

html - CSS:格式化布局的最佳方式

javascript - 在哈希/URL 片段中留出空间安全吗?

javascript - Google map 动态 URL 生成

javascript - 在 React 应用程序中使用 npm 包

javascript - Node 绝对值不适用于 webpack