0
我想从下面的每个URL中获取ID(1337)。最好的方法是什么?该ID始终是数字。也许拆分“/”并采取第一个数字值?我很欣赏你的想法。如何通过URL获取价值,防止打字错误?
其实网址就像第一个,但我想防止输入错误。
这里的的jsfiddle:http://jsfiddle.net/vKJfw/
/* outputs "1337" */
var url = "http://www.mydomain.com/module/action/1337/";
/* error: outputs "action" */
// var url = "http://www.mydomain.com/module/action/1337";
/* error: outputs "action" */
// var url = "http://www.mydomain.com/module/action/1337#";
/* error: outputs "" */
// var url = "http://www.mydomain.com/module/action/1337//";
/* error: outputs "bla" */
// var url = "http://www.mydomain.com/module/action/1337/bla/?x=y";
var url_parts = url.split("/");
var id = url_parts[url_parts.length-2];
alert(id); // should output "1337" everytime!
你不能只是寻找'/ module/action /(\ d +)*'(粗略地)吗? – 2013-05-09 14:12:57
示例的开始总是相同的,所以不要尝试从变量末尾读取它。只是从前面去:'str.split('/')[5]' – Yoshi 2013-05-09 14:14:25