首先,请尝试使用此代码为纯JavaScript和得到它的工作(没有PHP)刚刚获得的链接禁用。像这样...应该工作。
<script language="javascript">
function disableLinks(){
$('a').removeAttr('href');
$('a').click(function(event){
event.preventDefault();
alert('No tiene permisos para ingresar');
});
}
//trigger the function after the DOM is ready (possible problem)
$(document).ready(disableLinks);
</script>
如果这不起作用,请在Chrome上使用Javascript控制台并查找错误。确保jQuery已加载。有是与前面的代码,你试图加载页面之前禁用链接的机会。 document.ready确保首先加载DOM。
如果这个作品加入PHP。我建议做PHP部分简单的这样。用这个替换脚本块的最后一行。
<?php
if($_SESSION['whatever']=='whatever'){
echo('$(document).ready(disableLinks);');
}
?>
这可以做得更干净一点,但这应该让你去。
作为最后一点,一定要在后端强制执行此操作,因为这很容易被绕过,并且如果这是阻止访问的唯一方式,则不安全。
你对这里的会话一无所知。会话代码在哪里? – Hardy
请看看这些行是否在你的浏览器“查看源代码”中也请看看是否包含jquery – SajithNair
将'.removeAttr(“href”)'改为'.attr(“href”,“javascript:;”)' – krishna