我的 bean 没有触发我的 setter 方法,我不知道为什么。
这是xhtml的导入部分
<script type="text/javascript">
function updateTextInput(val, box) {
//document.getElementById(box).value=val;
}
</script>
Min value: </td><td><input type="range" name="minVal" min="-100" max="200" onchange="updateTextInput(this.value, 'minValInput');"/><h:inputText id="minValInput" value="#{myClass.minVal}"></h:inputText>
<h:form><h:commandButton value="#{myClass.status}" action="welcome">
这是我的豆子:
public class MyClass implements Serializable {
private static final long serialVersionUID = 1L;
private String status = "";
private int minVal = 0;
public String getStatus() {
if(status == "") {
status = "Start";
}
return status;
}
public void setStatus(String status) {
this.status = status;
}
public int getMinVal() {
System.out.println("*********************" + minVal);
return minVal;
}
public void setMinVal(int minVal) {
System.out.println("*********************" + minVal);
this.minVal = minVal;
}
我的命令按钮 getter 和 setter 很好,但从我的输出中我可以告诉 minVal 的 getter 执行了两次,而 setter 从未执行过。我确定我在这里忽略了一些简单的东西,但无法弄清楚。有人看到我忽略的东西吗?