在jQuery中获取URL并创建一个post link ajax

Getting the URL in jQuery and creating a post link ajax

本文关键字:一个 post ajax link jQuery 获取 URL 创建      更新时间:2023-09-26

我有一个URL,看起来像....

/page/sub/25/ --- edit page with ID @%
/page/sub  ---new page has no ID

URL的最后一部分总是ID (如果不是新页面则没有ID)

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

 $.ajax(
            {
                type: "POST",
                url: URLVar, 
                data: "site="+encodeURIComponent(JSON.stringify(site)),
                dataType: "json",
                },

如果URLVar有ID,则为

page/update/25

/page/update

如何根据当前URL生成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);

try

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

我个人会使用正则表达式来搜索一个数字,后面跟着一个/,在字符串的末尾;然后根据是否匹配形成更新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

jsFiddle演示

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