如何在页面加载时执行不同的Javascript函数,具体取决于所调用的操作?

时间:2013-07-31 13:13:48

标签: jsf jsf-2

我试图想办法有条件地调用特定的java脚本函数,假设我在页面中有4个链接而我没有使用<f:ajax>,当用户点击1-link然后testJs1()需要要调用等等,我搜索了omnifaces onloadScript,似乎是执行常见js函数的一个很好的选择,而不是单独执行。

寻找方法,因为,假设在一个页面中我有四个部分,如邮件,新闻,更新和编辑。所有这些都将是commandLink,所以我想在点击事件完成后调用单个js。

例如:

<h:commandLink id="discussions" action="#{connectDashBoardBean.navigateToDiscussion}" title="Click To Partcipate" 
            styleClass="#{connectDashBoardBean.discussionUpdateFlg ? 'favMenuSelected':'favMenu'}">
            <div id="discussion" class="favContentHead">
                <div class="favContentHeadImg">
                    <h:graphicImage value="/test/discussion.jpeg" height="20" width="20" />
                </div>
                <div class="favContentHeadText">
                    <h:outputText value="Start Discussing" />
                </div>
                <div class="favContentHeadUpdate">
                    <h:outputText value="1M+" />
                </div>
            </div>
            <f:param name="sessionKey" value="1234" />
            <f:param name="ref" value="1234" />
            <f:param name="pId" value="1234" />
            <!-- <f:ajax onevent="testing"/> -->
        </h:commandLink>

同样还有3个<h:commandLink>和action方法返回null,所以它将保留在同一页面中,但不同的组件将被加载到DOM树中,所以如果我将创建一个通用的JS函数然后一个JS可能无法应用于DOM树,因为该组件尚未存在,所以当我将该组件添加到DOM树时,我想调用特定的js函数,我想在每个点击时调用单独的JS调用链接,有什么办法吗?

0 个答案:

没有答案