JSF到JQuery组件集成

由于任何JSF页面在服务器端转换为其等效的HTML并发送到客户端进行呈现,并且客户端的JQuery获取HTML并重新呈现它。

从理论上讲,应该可以获取由JSF生成的HTML并将其包装到JQuery中,如果是这样,我想知道它是如何完成的。 如果可能,特别使用RichFaces作为JSF实现。

    

上面的JSF片段转换成它的等效HTML就是这样

 

不应该做这样的事情

  $(document).ready(function () { $('#table').dataTable(); }  

我已经尝试过,但它似乎没有用。

所以,如果有人有任何提示,我会非常感激。

混合JSF和jquery是可行的,但有一些问题。

JSF正在接管你的id,所以如果table是一个id为“form”的表单,html中的实际元素id默认为“form:table”。 我认为jquery可能在选择器中出现冒号问题,所以你可以用一个类标记你的表并选择它:

     

并将选择器设置为:

  

通过将层次结构上的容器的Id与:分隔符组合来生成JSF组件的Id。 并非所有容器都计数,我不记得确切的规则。

通常,一些JSF库有一些客户端API来获取我不知道的richfaces的组件ID。

无论如何,如果你想使用基于jQuery的JSF,请看看primefaces。

希望这可以帮助。

这个问题可能是由Jquery和富面孔组件引起的’$’名称间距冲突,它由Prototype.js.Try使用jQuery.noconflict()方法组成。 我有一个类似的问题,让jquery使用richfaces jquery.noconflict()做了诀窍..

  

祝好运!