我正在将项目中的 javascript 更改为 jquery。这是我第一次使用 Jquery,希望我会犯一些愚蠢的错误。我在 .js 文件中放置了一个简单的 JQ 警报函数,如下所示。
$(document).ready(function(){
$("#stt").change(function(){
alert("hi");
});
});
因此,目标是在 id="stt" 的 td 元素的值发生更改时发出警报消息。
<tr id="stttr">
<td id="stt"> <html:text property="stt" size="20" maxlength="20" style="height:12px; width: 180px;" /></td></tr>
这就是我在 jsp 的 head 标签之间引用 jquery 的方式。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9/jquery.min.js"></script>
<script src="javascript/SearchPanelJQ.js"></script>
<script src="javascript/CalendarPopup.js"></script>
Calendarpop.js 是一个较旧的 javascript 文件,我不想替换它(它在所有浏览器上都可以正常工作)。现在,当我在 IE 中启用脚本调试的浏览器中访问此页面时,我收到以下错误。
HTML1201: localhost is a website you've added to Compatibility View.
ReportingTemplate.jsp
SEC7115: :visited and :link styles can only differ by color. Some styles were not applied to :visited.
ReportingTemplate.jsp
SCRIPT5007: The value of the property '$' is null or undefined, not a Function object
SearchPanelJQ.js, line 1 character 1
最后一行告诉我设置有问题。你能告诉我什么吗?
我安装了 jsdt jquery 插件并且正在使用 JQ v1.9。该项目是一个struts项目。
编辑:1)当 JQ 函数包含在 jsp 中时它可以工作。当它在不同的 .js 文件中时,它不起作用。2) 即使我在参考中包含 http:,它也仅在 document.ready 函数在同一个 JSP 中时有效,而不是在不同的 .js 文件中时有效。这超出了目的,因为在我的项目的多个页面中将使用相同的验证。