1

我想创建动态组件(HtmlCommandLinks)。当我设置onClick属性时,不知何故 JSF 添加了额外的东西。所以它并没有javascript像我预期的那样触发我的。通过 FirBug 删除这些额外的东西后,它工作正常。

Application app = FacesContext.getCurrentInstance().getApplication();
HtmlCommandLink link = HtmlCommandLink)app.createComponent(HtmlCommandLink.COMPONENT_TYPE);
link.setId("link1");
link.setValue("ClickMe");
link.setOnclick("fireAlert('someText');");

但是我看到这样的东西......

<a onclick="jsf.util.chain(this,event,'fireAlert(\'someText\')','mojarra.jsfcljs(document.getElementById(\'frmBody\'),{\'frmBody:j_idt15:link1\':\'frmBody:j_idt15:link1\'},\'\')');return false" id="frmBody:j_idt15:link1" h>ClickMe</a>

我想要的是......

<a onclick="fireAlert('someText')" id="frmBody:j_idt15:link1" h>ClickMe</a>

我正在使用icefaces. 为什么我不能将那个简单的文本值设置为我的onClick值?

4

1 回答 1

0

使用h:commandLinkice:commandLink与渲染属性。

于 2013-04-09T18:51:01.540 回答