【问题标题】:Add new Param URL in the middle using javascript使用javascript在中间添加新的Param URL
【发布时间】:2019-01-15 07:22:24
【问题描述】:

很抱歉问了一些简单的问题。 我有这样的网址:

http://sub.maindomain/page/title

我要添加

/zh/

在我的网址中间,所以它会变成

http://sub.maindomain/en/page/title

感谢您的帮助

【问题讨论】:

标签: javascript jquery url url-rewriting url-redirection


【解决方案1】:

如果您想在地址栏中使用新的 URL 参数 zh 更改实际 URL。你可以试试这个。

var newUrl = location.origin + '/en' + location.pathname
document.location.href = newUrl

【讨论】:

    【解决方案2】:

    var str='http://sub.maindomain/page/title';
    var en='en/';
    var position= str.indexOf('page')
    alert(str.substr(0, position) + en + str.substr(position));

    我猜那个网址中总会有页面所以我找到了它的索引,

    并在它的索引之前添加 en

    【讨论】:

      【解决方案3】:

      假设您处于document 可用的上下文中(因为您的帖子被标记为jQuery,很可能是这种情况):

      const href = 'http://sub.maindomain/page/title?foo=bar#hash';
      
      // Build a link element
      const link = document.createElement('a');
      link.href = href;
      
      // Add '/en' before its pathname
      const result = link.protocol + '//' + link.host + '/en' + link.pathname + link.search + link.hash;
      
      console.log(result);

      【讨论】:

        【解决方案4】:

        如果 page 在域之后没有打开,则存在其他字符串,然后尝试下面的代码。

        var str = 'http://sub.maindomain/page/title';
        var arr = str.split(/\//);
        arr.splice(3, 0, 'en');
        str = arr.join('/');
        

        【讨论】:

          【解决方案5】:

          let url = "http://sub.maindomain/page/title";
          let textToAdd = "en/";
          //Split the url string into array of two elements and then join them together with a new string 'en/page' as a separator
          let newUrl = url.split('page').join(`${textToAdd}page`);
          console.log(newUrl);

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2011-03-22
            • 1970-01-01
            • 1970-01-01
            • 2011-10-31
            • 2012-01-16
            • 1970-01-01
            • 2018-03-20
            • 1970-01-01
            相关资源
            最近更新 更多