【问题标题】:jQuery get last part of URLjQuery 获取 URL 的最后一部分
【发布时间】:2013-06-14 13:04:02
【问题描述】:

我有一系列页面需要获取按钮的特定代码。 我想将 url 中的代码放入带有 jQ​​uery 的变量中。

示例网址是 www.example.com/folder/code/12345/

我想在一个名为 (siteCode) 的变量中获取数字部分

提前感谢您的任何回答。

jquery/伪代码:

var siteCode;

// start function
function imageCode(){
     siteCode // equals number part of URL
     $('.button').attr('src', 'http:www.example.com/images/'+siteCode+'.jpg');
}

【问题讨论】:

标签: javascript jquery html url get


【解决方案1】:

您可以使用以下代码获取url的最后一部分:

var value = url.substring(url.lastIndexOf('/') + 1);

【讨论】:

  • 您意识到lastIndexOf('/') 是作为 URL/字符串的最后一个字符出现的吗?
【解决方案2】:

我建议:

var URI = 'www.example.com/folder/code/12345/',
    parts = URI.split('/'),
    lastPart = parts.pop() == '' ? parts[parts.length - 1] : parts.pop();

JS Fiddle demo.

【讨论】:

  • 使用 .pop() 会使事情变得混乱,因为它具有破坏性并会更改 parts[] 数组。如果您的 URI 没有尾部斜杠,则无法返回“12345”,而是返回“代码”。使用这个版本更直接:lastPart = parts[parts.length-1] !== '' ? parts[parts.length-1] : parts[parts.length-2];
【解决方案3】:
var str="url";

str.split("/")[3]

你可以使用拆分

【讨论】:

    【解决方案4】:

    获取 URL 的最后一部分的一种最佳方法是如下所示,通常已在实际实现中使用。

    之前给出的答案存在一些漏洞

    1.考虑如果有一个像www.example.com/folder/code/12345这样的url(没有'/'正斜杠)那么上面的代码都不会按预期工作。

    2.考虑文件夹层次结构是否像www.example.com/folder/sub-folder/sub-sub-folder/code/12345一样增加

    $(function () {
         siteCode = getLastPartOfUrl('www.example.com/folder/code/12345/');
    });
    
    var getLastPartOfUrl =function($url) {
        var url = $url;
        var urlsplit = url.split("/");
        var lastpart = urlsplit[urlsplit.length-1];
        if(lastpart==='')
        {
            lastpart = urlsplit[urlsplit.length-2];
        }
        return lastpart;
    }
    

    【讨论】:

      【解决方案5】:

      也可以尝试使用

      var url = "www.example.com/folder/code/12345";
        var checkExt = /\d$/i.test(url);
        if (checkExt) {
            alert("Yup its a numeric");
        } else {
            alert("Nope");
        }
      

      【讨论】:

        猜你喜欢
        • 2011-11-15
        • 2013-11-01
        • 2019-04-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-07-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多