为什么超级链接上的点击事件未被触发?为什么超链接上的点击事件没有被触发?
@Html.ActionLink(
"Show the privacy policy",
"PrivacyPolicy",
null,
new { id = "privacyLink" })
<div id="privacy"></div>
<script>
$(document).ready(function() {
// $('div').addClass('fooh');
$('div#myDiv').click(function() {
alert('div was clicked');
});
$('a#privacyLink').click(function() {
alert('a');
});
});
</script>
的myDiv
click事件如预期被激发,但没有打响privacyLink
的事件,这是不显示的警告。
生成的HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Home Page</title>
<link href="/Content/Site.css" rel="stylesheet" type="text/css" />
<script src="/Scripts/jquery-1.5.1.min.js" type="text/javascript"></script>
<script src="/Scripts/modernizr-1.7.min.js" type="text/javascript"></script>
<script src="/Scripts/AjaxDemo.js" type="text/javascript"></script>
</head>
<body>
<div class="page">
<header>
<div id="title">
<h1>My MVC Application</h1>
</div>
<div id="logindisplay">
[ <a href="/Account/LogOn">Log On</a> ]
</div>
<nav>
<ul id="menu">
<li><a href="/">Home</a></li>
<li><a href="/Home/About">About</a></li>
</ul>
</nav>
</header>
<section id="main">
<h2>Welcome to ASP.NET MVC!</h2>
<p>
To learn more about ASP.NET MVC visit <a href="http://asp.net/mvc" title="ASP.NET MVC Website">http://asp.net/mvc</a>.
</p>
<div id="myDiv">
<p>
Me Gusta
</p>
</div>
<a href="/Home/PrivacyPolicy" id="privacyLink">Show the privacy policy</a>
<div id="privacy"></div>
<script>
$(document).ready(function() {
// $('div').addClass('fooh');
$('div#myDiv').click(function() {
alert('div was clicked');
});
$('a#privacyLink').click(function (e) {
e.preventDefault();
alert('a');
$(location).src = $(this).attr('href');
});
});
</script>
</section>
<footer>
</footer>
</div>
</body>
</html>
当您点击链接时会发生什么? – 2013-03-03 17:38:02
只是重定向到指定的动作 – 2013-03-03 17:41:23
有几种可能性浮现在脑海中:DOM中有多个元素与id =“privacyLink”',或者您有一些JavaScript错误,无法连接点击处理程序(看看你的js控制台)。 – 2013-03-03 17:42:47