我想创建动态组件(HtmlCommandLink
s)。当我设置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
值?