Can';t访问jsf组件中的javascript文件
我有一个必须访问javascript文件的jsf组件,我在下面的代码中添加了这个带有outputScript的组件,我在生成的html中得到一个错误,无法访问javascript。 javascript文件位于document_root/js目录中 我怎样才能解决这个问题,谢谢你的帮助Can';t访问jsf组件中的javascript文件,javascript,jsf,jsf-2,composite-component,Javascript,Jsf,Jsf 2,Composite Component,我有一个必须访问javascript文件的jsf组件,我在下面的代码中添加了这个带有outputScript的组件,我在生成的html中得到一个错误,无法访问javascript。 javascript文件位于document_root/js目录中 我怎样才能解决这个问题,谢谢你的帮助 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:composite="http://java.sun.com/jsf/composite"
xmlns:c="http://java.sun.com/jsp/jstl/core">
<h:head><title>(For validation only)</title>
<link href="./css/styles.css"
rel="stylesheet" type="text/css"/>
</h:head>
<h:body>
<composite:interface/>
<composite:implementation>
<h:outputScript library="js" name="messages.js" />
<h:outputScript library="js" name="DateValidation.js" />
<h:form id="f">
<h:outputText value="Date" />
<h:inputText id="dateA"
onblur="return validateDateField('f:dateA');">
</h:inputText>
</h:form>
</composite:implementation>
</h:body>
</html>
(仅用于验证)
这些文件必须放在/resources
子文件夹中。因此,您应该在公共网络内容中包含以下内容:
/resources/js/DateValidation.js
/resources/js/messages.js
与具体问题无关,您的复合组件方法相当笨拙。我建议查看tag wiki:在生成的html中,我得到这一行:我不知道jsf try
name=“./js/messages.js”
非常感谢您的回答,我现在可以访问javascript文件了,但是我得到了一个javascript错误,因为我的inputText的id是在j_idt6前面的,所以我的inputText的id变成了j_idt6:f:dateA,而不是f:dateA。你有没有想法绕过这个问题。这是一个不同的问题,你本质上应该问一个新问题。然而,之前已经多次询问过,另请参见和