【发布时间】:2010-11-08 14:55:36
【问题描述】:
如何使用 javascript 检查字符串中是否存在 url 或 url 模式。
<script language="javascript">
var str="http://localhost/testprj?test=123213123";
var s=location.href;
if(s.match('/http://localhost/testprj?test=1232/'){
alert('welcome!!');
}
</script>
我需要检查 url 模式。
完整代码
<html>
<head>
</head>
<body>
<style>
.active{
color:#009900;
font-weight:bold;
}
</style>
<div id="menu">
<ul><li>
<ul><li> <a href="html1.html">0</a>
<a href="html.html" >1</a>
<a href="2">2</a>
</li>
</ul></li>
</ul>
</div>
<script language="javascript">
var c=document.getElementById('menu').getElementsByTagName('a').length;
var v=document.getElementById('menu').getElementsByTagName('a');
var s=location.href;
//alert(s.match('html'));
for(var i=0;i<c;i++){
//alert('href'+v[i].className);
if(v[i].href==location.href){
v[i].className='active';
}
}
</script>
</body>
</html>
这工作正常,但如果获取参数导致一些问题...
喜欢 page.php?page=userlist 工作正常
但是
点赞 page.php?page=userlist&id=121221
这是基本链接网址 链接
【问题讨论】:
-
在完整的代码中,我没有看到任何 URL 正则表达式(按照我们建议的内容)。但是,如果我理解“获取参数会导致一些问题”正确,您可能需要对正则表达式进行一些服务器端 (PHP) 转义。
标签: javascript regex url