事实上,如果您按原样分析代码,您会得到“近似”的事件转折点:
- 你点击按钮。
- 表格即将提交。
- 你的 JavaScript 函数被调用,因此你的值
div
被改变了。
- 表格已提交。
- 发生了对相同视图的回发,有效地使您
div
回到hello
.
这就是一切的运作方式。
顺便说一句,<div id="myDiv" onclick="Findchange()">hello</div>
正在工作,并且不<h:commandButton>
通过使用其onclick
属性来提交表单,例如:
<h:commandButton value="submit" onclick="return Findchange()"/>
和
function Findchange() {
document.getElementById("myDiv").innerHTML='ravi';
return false;
}
附带说明一下,实现功能的 JSF 方法是使用 AJAX(或者同步)更新 div 的内容,例如:
<h:form id="form">
<h:panelGroup id="div-id" display="block">
#{bean.name}
</h:panelGroup>
<h:commandButton value="Submit" action="#{bean.changeName}">
<f:ajax render="div-id"/>
</h:commandButton>
</h:form>
豆类
@ManagedBean
@RequestScoped
public class Bean {
private String name = "Josh";//getter + setter
public String changeName() {
name = "Ravi";
return null;
}
}