【问题标题】:Getting query string from re written URL从重写的 URL 获取查询字符串
【发布时间】:2018-08-04 07:39:54
【问题描述】:

我有网址“SampleProject/profile/aA12”。如何使用 javascript 从我重写的 URL 中获取 id 的值?我想得到“aA12”的值。

我正在使用 htaccess rewrite 重写我的 URL。我是重写 url 的新手。任何帮助将不胜感激。更多权力,谢谢。

【问题讨论】:

    标签: javascript .htaccess url-rewriting


    【解决方案1】:

    你可以使用正则表达式。

    试试

    'SampleProject/profile/aA12'.match(/\SampleProject\/profile\/(\w+)/)
    
    'SampleProject/profile/aA12/xxx'.match(/\SampleProject\/profile\/(\w+)/)
    

    'aA12' 在这两种情况下都会匹配。

    【讨论】:

      【解决方案2】:

      有很多方法可以使用 JavaScript 实现您的目标。一个简单的解决方案可能是这样的:

      let myURL = "SampleProject/profile/aA12";
      
      let result = myURL.split('/').pop();
      // returns "aA12"
      

      .split('/') 方法使用/ 字符将您的字符串划分为一个数组,而.pop() 只是返回该数组的最后一个元素。

      希望这会有所帮助!如果您正在寻找更高级的匹配,即如果您想忽略 URL 参数末尾的潜在查询字符串,您可以使用正则表达式。

      【讨论】:

      • 在我之前的工作中我使用这个函数“function getQueryStringValue(key) { return decodeURIComponent(window.location.search.replace(new RegExp("^(?:.*[&\\?] " + encodeURIComponent(key).replace(/[\.\+*]/g, "\\$&") + "(?:\\=([^&]*))?)?.*$" , "i"), "$1")); }" 我不知道在哪里编辑它来实现我的目标。
      【解决方案3】:

      您可以使用多种方法来实现所需的方法,我在此链接中为您制作了代码笔

      var url = "SampleProject/profile/aA12";
      
      let res = url.split('/').pop();
      console.log(res)
      

      https://codepen.io/anon/pen/KQxNja

      【讨论】:

      • 如何使用javascript获取当前url?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-02
      • 2012-01-18
      • 1970-01-01
      • 1970-01-01
      • 2023-03-17
      • 1970-01-01
      相关资源
      最近更新 更多