【发布时间】:2011-12-18 21:16:21
【问题描述】:
我在使用带有 MyFaces 2.0 的 h:outputscripts 中的 CDATA 块时遇到了一些问题......但我不知道是否应该避免将 CDATA 与 JSF2 一起使用,或者是因为我做错了。
可能是因为我在很多 Composite 组件中使用了很多脚本...
事实是,当我有一些包含被 CDATA 块包围的脚本的复合组件时,页面中的其他脚本不起作用。
删除 CDATA 解决了这个问题。
不过,我遇到了一个问题,即使用 CDATA 块使我的一些复合组件出现错误,说在尝试使用 f:ajax 渲染属性渲染组件时,在类 NamingContainer 上找不到组件的属性。 Here is the workaround.
删除我的脚本周围的 CDATA 解决了这个问题。
所以我的问题是:我是唯一一个遇到 CDATA 块和 JSF2 (MyFaces) 问题的人吗?
【问题讨论】:
-
为什么不把脚本放在一个单独的文件中?
-
我刚刚尝试过,但它似乎不起作用。事实上,我的脚本以复合组件的组件为目标,我在脚本中使用了#{cc.clientID}。所以我认为,当外化时,js不会用真实值替换#{cc.clientID}...
有没有办法让外化的js得到它?