问题描述
这是URL
http://localhost:8080/BIM/teacher/reports/section-exercise/assignment?assessmentId=206a9246-ce83-412b-b8ad-6b3e28be44e3&classroomId=722bfadb-9774-4d59-9a47-89ac9a7a8f9a
我想在之前获取我的URL的最后一段?
,忽略之后?
有人可以教我怎么做吗?
我试过了
var href = location.href;
var lastSegment = href.substr(href.lastIndexOf('/') + 1);
console.log(lastSegment);
我有
分配?assessmentId = 206a9246-ce83-412b-b8ad-6b3e28be44e3&classroomId = 722bfadb-9774-4d59-9a47-89ac9a7a8f9a
我只想要任务
1楼
尝试这个
var pathParts = location.pathname.split('/'),
basename = pathParts[pathParts.length - 1];
或者这个超级方便的单行程序(有时我必须提醒自己数组有方法)
var basename = location.pathname.split('/').pop();
请参见
2楼
var lastSegment = href.substring(href.lastIndexOf('/') + 1, href.lastIndexOf('?'));
你还必须限制你的结束 - 并使用substring而不是substr。
这也是小提琴;)
3楼
尝试使用String.prototype.match()
var url = "http://localhost:8080/BIM/teacher/reports/section-exercise/assignment?assessmentId=206a9246-ce83-412b-b8ad-6b3e28be44e3&classroomId=722bfadb-9774-4d59-9a47-89ac9a7a8f9a"; var res = url.match(/\\w+\\?/)[0].slice(0, -1); document.write(res);