不调用在头部编写jquery函数

时间:2013-03-12 09:22:39

标签: jquery

我复制了相同的示例表单jquery网站,以在jQuery中实现change()的功能。如果<script>..</script>被剪切并粘贴在头部,那么在更改选择值时根本不会调用该函数。有什么理由我应该在下面选择这个片段吗? This是我将<script>部分放在标题中的小提琴。默认代码为this one

3 个答案:

答案 0 :(得分:2)

我怀疑你的问题是你的DOM没有准备好。在jQuery中使用DOM时,您应该绑定document元素的ready()函数,如下所示:

$(document).ready(function() {  
    // execute your code here.
});

或者,您可以使用快捷方式功能,如下所示:

$(function() {  

});

对于您的示例,更新head中的代码应如下:

<script type="text/javascript">
$(function() { 
    $('#select_id').change(function() {  
        // handle the change event
    });
});
</script>

答案 1 :(得分:1)

尝试使用:

围绕该功能(仍然在头部)
$(document).ready(function(){

   //Your code here

});

答案 2 :(得分:1)

如果您将脚本放在head块中,那么页面可能在执行之前没有完成加载。 jquery有一个处理这个的机制,即在文档准备好时运行脚本。这样做如下:

$(document).ready(function(){

   $('.target').change(function() {  alert('Handler for .change() called.');});

});

文档完全加载后,将调用ready函数中的所有代码。几乎所有的jquery代码都以这种方式调用。