jQuery的新手 - 为什么这个简单的功能不起作用?

时间:2012-03-08 20:24:52

标签: php javascript jquery codeigniter

我正在CodeIgniter中构建一个Web应用程序,我决定使用jQuery和Javascript - 这是我以前从未真正使用过的。

我已使用Google库在我的标题中添加了jQuery:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>

现在我正在摆弄jQuery的SIMPLEST,但它没有用。

<p><a href="#" id="lovecounter"><?php if ($post->love) { echo $post->love; } else { echo 0; } ?></a></p>

<script type="text/javascript">

$("#lovecounter").click(function() {
  alert("Click");
});         

</script>

我点击了lovecounter链接,但没有提醒。如果我将简单的javascript添加到实际的锚标签,它可以工作。

<p><a href="#" id="lovecounter" onclick="alert('test')"><?php if ($post->love) { echo $post->love; } else { echo 0; } ?></a></p>

有什么想法吗?我做错了什么?

3 个答案:

答案 0 :(得分:5)

将您的代码包裹在ready handler

$(document).ready(function(){
  $("#lovecounter").click(function() {
    alert("Click");
  });     
});

Working Example

答案 1 :(得分:1)

这对我来说非常好:

<p><a href="#" id="lovecounter">asdf</a></p>

<script type="text/javascript">
$(document).ready(function() {

$("#lovecounter").click(function() {
  alert("Click");
});         

});
</script>

答案 2 :(得分:0)

你应该像Sarfraz所说的那样包括一个$(document).ready(function() {});。否则,它将找不到ID为lovecounter的任何内容,因为页面上尚未加载任何内容。如果你等待它加载,那么它将找到该元素。以下是一些文档:http://www.w3schools.com/jquery/event_ready.asp。这是一个完整的jQuery课程:http://www.codecademy.com/tracks/jquery