2010-02-04 98 views
0
<html xmlns="http://www.w3.org/1999/xhtml" > 
<head runat="server"> 
    <title>System Toolbox</title> 
    <script src="../../Scripts/jquery-1.3.2.js" type="text/javascript" /> 
    <script type="text/javascript"> 

     $document.ready(function() { 

      $("#SearchFor").change(function() { 
        alert($(this).val()); 
      }); 
     }); 

    </script> 
</head> 
<body> 
    <div> 
     Search for: <select name="SearchFor" id="SearchFor"> 
      <option value="company">Company</option> 
      <option value="user">User</option> 
      <option value="bundle">Bundle</option> 
      <option value="course">Course</option> 
     </select> 
     <div id="SearchType"></div> 
    </div> 
</body> 
</html> 

每萤火虫没有JavaScript错误...为什么jQuery中没有这个.change事件触发?

回答

4

您的document.ready语句不正确。应该是:

$(document).ready(function() { 

    ... 

}); 
+0

oh/facepalm谢谢:) – BigOmega 2010-02-04 20:28:33

+0

虽然其他两个答案都是正确的,但这其中一个实际上回答了这个问题。 – offner 2010-02-04 20:29:25

+0

是的额外眼睛总是帮助... – 2010-02-04 20:30:25

0

试试这个:

$(function() { //Shortcut for $(document).ready(); 
    $("#SearchFor").change(function() { 
    alert($(this).val()); 
    }); 
}); 

此外,最好使用脚本标记这样还是:

<script src="../../Scripts/jquery-1.3.2.js" type="text/javascript"></script> 

见这个问题更多细节:Why don’t self-closing script tags work?

+0

Crockford建议不要提供“type”属性。 – Pointy 2010-02-04 20:28:00

+0

@Pointy - 谁?这是一个必需的属性:http://www.w3.org/TR/REC-html40/interact/scripts.html#h-18.2.1 – 2010-02-04 20:31:15

+0

Douglas Crockford - http://javascript.crockford.com/script.html – Pointy 2010-02-04 20:40:14

0

应ju st是

$(function() { 
    $("#SearchFor").change(function() { 
       alert($(this).val()); 
     }); 
    }); 
0

$document不是一个jQuery对象的有效参考,尝试

$(document) 

注意括号

1

你写

$document.ready(function() { 

但应该是这样的,而不是:

$(document).ready(function() { 
相关问题