我开始学习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>
答案 0 :(得分:2)
由于您的脚本在HTML 之前,请将其包含在DOM ready handler
中。这可确保脚本在DOm加载后运行。
<script type="text/javascript">
$(function() {
$("#storage").change(function(){
alert("sample ng onchange");
});
});
</script>
答案 1 :(得分:1)
也许您需要将js代码包装在jquery文档就绪块中
答案 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);