Javascript 在jQuery中获取URL并创建贴子链接ajax
我有一个URL,看起来像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,
/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是的,你是对的!!更新了我的答案。谢谢你的关注。