jquery – 如何通过h来包含JavaScript文件:outputScript?

前端之家收集整理的这篇文章主要介绍了jquery – 如何通过h来包含JavaScript文件:outputScript?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > How to reference CSS / JS / image resource in Facelets template?2
我想使用jQuery Validate插件与JSF进行客户端表单验证.我在进口资源方面遇到基本困难.

在我的JSF页面

@H_403_5@<h:outputScript library="js" name="jquery-1.6.2.js"></h:outputScript> <h:outputScript library="js" name="jquery.validate.js"></h:outputScript> <h:outputScript library="js" name="jquery.maskedinput.js"></h:outputScript> <h:outputScript library="js" name="myapp.validate.js"></h:outputScript>

当我点击Firefox中的脚本选项卡时,我在下拉列表中看不到任何脚本文件.有一条消息显示

If tags have a “type” attribute,it should equal “text/javascript” or “application/javascript”. Also scripts must be parsable (syntactically correct).

更好的我的jquery效果,如鼠标悬停,隐藏,显示等不工作.我尝试使用通常的脚本标签

@H_403_5@<script type="text/javascript" src="../js/jquery-1.6.2.js"></script> <script type="text/javascript" src="../js/jquery.validate.js"></script> <script type="text/javascript" src="../js/jquery.maskedinput.js"></script> <script type="text/javascript" src="../js/myapp.validate.js"></script>

哪个没有用仍然无法找到我的JS文件.我所有的JS文件都放在下面

@H_403_5@Web pages |_ js |_jquery-1.6.2.js,my.validate.js,jquery.validate.js,jquery.maskedinput.js

我尝试了在Using jQuery with JSF 2.0’s resource发布的一个解决方案,但没有成功.

请教我一个解决办法.我不想使用JSF内置验证与ajax,因为我们将代码从JSP移动到JSF,验证已经被写入.我想重用现有的jQuery验证,我以前写过.

解决方法

< h:outputScript> (和< h:outputStylesheet>)从/ resources文件夹加载资源.您需要将脚本放在该文件夹中. @H_403_5@WebContent |-- resources | `-- js | |-- jquery-1.6.2.js | |-- myapp.validate.js | |-- jquery.validate.js | `-- jquery.maskedinput.js |-- WEB-INF :

那么下面的脚本声明应该起作用:

@H_403_5@<h:outputScript name="js/jquery-1.6.2.js" /> <h:outputScript name="js/jquery.validate.js" /> <h:outputScript name="js/jquery.maskedinput.js" /> <h:outputScript name="js/myapp.validate.js" />

(请注意,我省略了库属性,因为名称“js”不表示一个real library)

你的< script>方法失败可能是由于使用不正确的相对路径引起的.您需要意识到资源相对于当前请求URL而不是服务器端磁盘文件系统的路径进行解析.

猜你在找的jQuery相关文章