这个功能要是用JS实现是有些麻烦的,用JSF把前台与后台bean进行绑定就可轻松实现。
(这个里面还存在有大量的JSP思想,现在修改如下:)
页面代码:
<h:selectBooleanCheckbox value="#{recu_planBB.selectAll}" οnclick="return displayAll();"/>
修改后为:
<h:selectBooleanCheckbox value="#{recu_planBB.selectAll}" οnclick="submit();" valueChangeListener="#{recu_planBB.queryAll}"/>
其中valueChangeListener是JSF自带的属性;下面这段脚本去掉
function displayAll(){
document.form1.action="/recruit/planAudit.jsf";
document.form1.submit();
return true;
}
后台bean代码:
private boolean selectAll;
public boolean getSelectAll() {
return selectAll;
}
public void setSelectAll(boolean selectAll) {
this.selectAll = selectAll;
}
bean代码修改如下:
private boolean selectAll;
public boolean getSelectAll() {
return selectAll;
}
public void setSelectAll(boolean selectAll) { this.selectAll = selectAll;
}
public void queryAll(ValueChangeEvent event){
selectAll="true".equals(event.getNewValue().toString());
queryPlanList();
}
在checkbox没有选中的情况下,默认的值为false,选中后即可变成true,这样以来,只要你选中了checkbox它就会一直处于选中状态,除非你把它去掉。(这样以来就完全是JSF的思想了)