Jquery警报不起作用

时间:2013-08-01 17:23:23

标签: jquery asp.net-mvc-3

我试图了解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知识非常有限。

4 个答案:

答案 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/)。