gpt4 book ai didi

javascript - 什么会导致浏览器控制台出现 "jsf is not defined"错误

转载 作者:数据小太阳 更新时间:2023-10-29 03:52:18 24 4
gpt4 key购买 nike

您好,我在 Tomcat 6 上有一个基于 MyFaces 2.0.11 和 Primefaces 3.0 的简单新项目

当我试图导航到一个页面时,我得到了 Uncaught ReferenceError: jsf is not defined错误将我引导到我的 js 代码中的引用 jsf.ajax.addOnEvent ...(这是合理的,因为我正在尝试使用 jsf.js 并且它不存在,我是我的页面..)

如果我查看我的页面的源代码,我不会包含 jsf.js文件

现在如果我像这样手动添加它

<h:outputScript name="jsf.js" library="javax.faces" target="head"/>

一切正常......但我不想手动包含它,相反我想知道是什么原因导致我的页面中缺少 jsf.js

我谷歌了一段时间,没有一个类似的案例代表我的

我有<h:head><h:body>我的页面真的很简单...

有什么想法吗?

最佳答案

此脚本只会在您使用 <f:ajax> 时自动包含在 View 中。如果不这样做,则不会自动包含它。

只需在调用 jsf.ajax.addOnEvent 之前添加额外的支票:

if (typeof jsf !== 'undefined') {
jsf.ajax.addOnEvent(someFunctionName);
}

或者,通过 <h:outputScript> 显式包含库在右边library ,就像您已经做过的那样。

关于javascript - 什么会导致浏览器控制台出现 "jsf is not defined"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9971925/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com