【发布时间】:2017-03-20 15:09:58
【问题描述】:
我有一个 jsf 页面,即使面板内有链接,也可以点击整个面板。这是通过将以下js函数应用于jsf页面来完成的。(请注意页面结构)
<h:panelGroup layout="block" styleClass="col-md-3">
<h:form>
<ui:repeat>
//lots of panels and panel groups
</ui:repeat>
**<h:outputScript>
$(function() {
setupPanelLinks();
});
</h:outputScript>**
</h:form>
</h:panelGroup>
<h:panelGroup id =**"SeceondPanelGroup"** layout="block" styleClass="col-md-6 col-md-offset-1">
</h:panelGroup>
js 函数在另一个单独的 .js 页面上的位置
function setupPanelLinks() {
$(".panel").click(function() {
window.location.href = $(this).find("a.myLink").attr('href');
});
$(".panel a").click(function(e) {
e.stopPropagation();
});
}
其中 myLink 是应用于第一个 ui:repeat 内的 h:link 的 styleClass。
现在一切正常。问题是javascript函数应用于jsf页面中的所有面板,因为我只想将它应用于上部面板组而不是“SecondPanelGroup”。我的 JS 知识有限,但我猜我们需要 js 函数的目标来缩小其范围。有什么建议可以实现吗?
javascript函数能否应用于页面的某个部分,例如div而不是整个页面?
【问题讨论】:
-
Javascript是应用客户端,网络服务器端,所以生成的html而不是xhtml是相关的!
标签: javascript ajax jsf-2.2