我试图了解jquery如何处理点击事件。所以我创建了一个简单的mvc 3应用程序,然后在视图中添加了一个按钮。我创建了一个简单的js文件。但是,当我单击它时,它不会弹出警报。
以下是我在视图中的代码:
@{
ViewBag.Title = "Home Page";
}
<script src="../../Scripts/first.js"></script>
<h2>@ViewBag.Message</h2>
<div>
<p style="text-align: center;">
<input type="button" id="steps" name="steps" value="Next >" />
</p>
</div>
这是我完整的js文件:
$("#steps").click(function () {
alert("hola!");
});
任何输入都会非常感激,因为我的javascript / jquery知识非常有限。
答案 0 :(得分:0)
你提到它是“完整的”js文件。
您需要围绕.ready()
方法包装jQuery代码:
$(document).ready(function() {
$("#steps").click(function () {
alert("hola!");
});
});
答案 1 :(得分:0)
您需要使用以下两种功能
中的任何一种来确保文档准备好$(function() {
// Code here...
});
或强>
$(document).ready(function() {
// Code here...
});
喜欢这个
$(function(){
$("#steps").click(function () {
alert("hola!");
});
});
文档:http://api.jquery.com/ready/
如果您不这样做,那么当元素不存在时,您可能正在添加click
事件。
PS:还要确保你实际上包含jQuery
答案 2 :(得分:0)
可能是运行时错误。您的JS正在尝试引用浏览器正在读取的代码点不存在的元素 - 您的button
。因此,要解决这个问题,请将该代码放在$(document).ready()
函数中,或将其放在页面的底部中。
答案 3 :(得分:0)
你的javascript是正确的。 http://jsfiddle.net/FMy65/
您是否正确加载了jQuery?您需要加载jQuery库才能使用它。您可以在页面顶部添加<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js'></script>
来完成此操作。
这是使用CDN(脚本在其他地方托管),或者您可以下载它并将其托管在您的服务器上(http://code.jquery.com/)。