Javascript 在jQuery中获取URL并创建贴子链接ajax

Javascript 在jQuery中获取URL并创建贴子链接ajax,javascript,jquery,Javascript,Jquery,我有一个URL,看起来像 /page/sub/25/ --- edit page with ID @% /page/sub ---new page has no ID URL的最后一部分始终是ID(如果不是新页面,则没有ID) 我需要在jQuery中获取URL的最后一部分并将其与帖子一起发送。例如 $.ajax( { type: "POST", url: URLVar,

我有一个URL,看起来像

/page/sub/25/ --- edit page with ID @%
/page/sub  ---new page has no ID
URL的最后一部分始终是ID(如果不是新页面,则没有ID)

我需要在jQuery中获取URL的最后一部分并将其与帖子一起发送。例如

 $.ajax(
            {
                type: "POST",
                url: URLVar, 
                data: "site="+encodeURIComponent(JSON.stringify(site)),
                dataType: "json",
                },
其中
URLVar
如果它有ID,则为

page/update/25
如果没有呢

/page/update
如何基于当前URL生成URLVar?请尝试

   var url = location.href;
    var id= url.substring(url.lastIndexOf('/') + 1);
试一试

试试这个:

var href = window.location.href;
var val = href.substr(href.lastIndexOf('sub') + 4).replace('/', '');
var URLVar = '';
if (val !== '') URLVar = 'page/update/' + val;
else URLVar = '/page/update';
alert(URLVar);
试试这个:

var href = window.location.href;
var val = href.substr(href.lastIndexOf('sub') + 4).replace('/', '');
var URLVar = '';
if (val !== '') URLVar = 'page/update/' + val;
else URLVar = '/page/update';
alert(URLVar);

就我个人而言,我会使用正则表达式搜索一个数字,然后在字符串的末尾加上一个
/
;然后根据是否匹配形成更新URL。您可以将该逻辑拆分为一个函数,如下所示:

function getUpdateUrl(url) {
    var matches = url.match(/(\d+)\/$/);
    return '/page/update' + (matches ? '/' + matches[1] : '');
}
然后,例如,您可以这样称呼它:

console.log(getUpdateUrl('/page/sub/')); // outputs /page/update
console.log(getUpdateUrl('/page/sub/25/')); // outputs /page/update/25


在您的情况下,您可能需要调用
getUpdateUrl(window.location.href)

,我个人会使用正则表达式搜索数字,然后在字符串的末尾键入一个
/
;然后根据是否匹配形成更新URL。您可以将该逻辑拆分为一个函数,如下所示:

function getUpdateUrl(url) {
    var matches = url.match(/(\d+)\/$/);
    return '/page/update' + (matches ? '/' + matches[1] : '');
}
然后,例如,您可以这样称呼它:

console.log(getUpdateUrl('/page/sub/')); // outputs /page/update
console.log(getUpdateUrl('/page/sub/25/')); // outputs /page/update/25


在您的情况下,您可能希望调用
getUpdateUrl(window.location.href)

这是一个开始:
location.href.split('/')
这是一个开始:
location.href.split('/'))
这是一个开始,但还不是一个完整的解决方案。我通常会发现,包含一些解释代码功能的文本也很有帮助,这样它实际上会教一些东西。@AnthonyGrist是的,你是对的!!更新了我的答案。谢谢你的关注。这是一个开始,但这还不是一个完整的解决方案。我通常会发现,包含一些解释代码功能的文本也很有帮助,这样它实际上会教一些东西。@AnthonyGrist是的,你是对的!!更新了我的答案。谢谢你的关注。