jQuery选择器不工作?

时间:2013-05-23 00:42:28

标签: jquery jquery-selectors struts2

我开始学习jquery,我读了教程,我构建了我的代码,但我想知道为什么这段代码在我的页面上不起作用:

<script src="jquery-1.9.1.js"></script>  
<script src="jquery-ui.js"></script>
<script src="jquery-min.js"></script>
<script type="text/javascript">
  $("#storage").change(function(){
    alert("sample ng onchange");    
  });
</script>


<tr><td><s:text name="label.storageArea" /></td>
<td><s:select  name="mediaBean.storageAreaDesc" 
            list="storageAreaList"              
            value="%{mediaBean.storageAreaDesc}" 
            size="1" style="width:155px;" 
            theme="simple" id="storage" />
</td>   
</tr>

请帮忙。谢谢。

以下是生成的标记HTML:

<select name="mediaBean.storageAreaDesc" size="1" id="storage" style="width:155px;">
    <option value="1 - Storage 1" selected="selected">1 - Storage 1</option>
    <option value="2 - Storage 2">2 - Storage 2</option>
    <option value="3 - Storage 3">3 - Storage 3</option>
</select>

3 个答案:

答案 0 :(得分:2)

由于您的脚本在HTML 之前,请将其包含在DOM ready handler中。这可确保脚本在DOm加载后运行。

<script type="text/javascript">
  $(function() {
      $("#storage").change(function(){
         alert("sample ng onchange");    
      });
   });
</script>

答案 1 :(得分:1)

也许您需要将js代码包装在jquery文档就绪块中

请参阅http://api.jquery.com/ready/Jquery select change

答案 2 :(得分:0)

首先,将所有j放在页面底部并使用它来包装代码

;(function($) {
    $(document).ready(function() {
        // Stuff to do as soon as the DOM is ready. 
        // Use $() w/o colliding with other libs;
    })
})(jQuery);