这是网址
http://localhost:8080/BIM/teacher/reports/section-exercise/assignment?assessmentId=206a9246-ce83-412b-b8ad-6b3e28be44e3&classroomId=722bfadb-9774-4d59-9a47-89ac9a7a8f9a
我想在?
之前抓取我的网址的最后一段,忽略?
之后的内容
有人可以教我怎么做吗?
我试过
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
我只想要作业
答案 0 :(得分:5)
试试这个
var pathParts = location.pathname.split('/'),
basename = pathParts[pathParts.length - 1];
或者这个超级方便的单行(有时我必须提醒自己数组有方法)
var basename = location.pathname.split('/').pop();
答案 1 :(得分:2)
var lastSegment = href.substring(href.lastIndexOf('/') + 1, href.lastIndexOf('?'));
您还必须限制结束 - 并使用子字符串而不是substr。
这也是小提琴;) http://jsfiddle.net/jf2xrahx/
答案 2 :(得分:1)
尝试使用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);