【问题标题】:Converting Javascript hashtag转换 Javascript 主题标签
【发布时间】:2014-07-14 02:39:49
【问题描述】:

我要做的是在不使用 url 中的 hashtag 元素的情况下获取一段字符串。我已经有一个有效的代码,但它需要改变。那么,如何获取? 之后的任何部分网址。

假设我有?fx=shipment+toys/fish-fix-fx/ 作为我的网址字符串;例如,我希望按钮显示 shipmentfishfx 是我的选择。

带有标签的按钮:http://jsfiddle.net/66kCf/2/show/#iphone
原始 JSFiddle(按钮未显示):http://jsfiddle.net/66kCf/2/

我希望 iPhone 按钮显示 fix 是否是我的选择:http://jsfiddle.net/66kCf/2/show/?fx=shipment+toys/fish-fix-fx/

【问题讨论】:

标签: javascript jquery html css


【解决方案1】:

这是你要找的吗:

"?fx=shipment+toys/fish-fix-fx/".split(/[\?=+\/-]/g);

【讨论】:

  • 您能告诉我原始代码的实现吗?先生
  • 什么是我上面的链接都不起作用?
  • 您应该会在 url (jsfiddle.net/66kCf/2/show/#iphone) 中看到三个带有 #iphone 的按钮
  • 按钮不会显示在 (jsfiddle.net/66kCf/2) 中,因为主题标签 iPhone (#iphone) 不在 URL 中。
  • 如果你想分享一个工作或更清晰的样本,你的样本不起作用,我会看看到目前为止你有什么不可用。
【解决方案2】:
【解决方案3】:

一般来说,Javascript 没有用于查询字符串参数的内置功能。您可以在 window.location.search 上使用字符串操作来从 URL 字符串中获取参数。请注意,location.search 也包含 ? 字符。

应该这样做:

   var queryString = function () {
          // Anonymous function - executed immediately
          // get rid of the '?' char
          var str = "?fx=shipment+toys/fish-fix-fx/";
          var query = str.substring(str.lastIndexOf('=')+1,str.indexOf('/'));
          var vars = query.split("+");
          for (var i=0;i<vars.length;i++){
              console.log(vars[i]);
          }
          return vars;
        } ();

【讨论】:

  • 我也对 JQuery 持开放态度。但如果你能告诉我如何实现window.location.search,那么问题就解决了。
  • 我添加了一段可能适合您需求的代码。它提取参数并将它们返回到一个数组中(我也在控制台上打印它们,以便您自己查看结果)。
【解决方案4】:

尝试像这样使用.split().match()...

var keys = window.location.href.split('?'); 
if (keys[1].match(/(fix|fish|fx)/))
{
    $("#linkdiv").append(nextLink);
    $("#linkdiv1").append(nextLink);
    $("#linkdiv2").append(nextLink);
}  

演示按钮显示:http://jsfiddle.net/LbKmf/show/?fx=shipment+toys/fish-fix-fx/
演示按钮未显示:http://jsfiddle.net/LbKmf/show/?reigel

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-18
    • 1970-01-01
    • 1970-01-01
    • 2012-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多