博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jsf如何通过按钮切换在同一个页面上的非公共部分显示不同的内容
阅读量:5968 次
发布时间:2019-06-19

本文共 1327 字,大约阅读时间需要 4 分钟。

hot3.png

在jsf中,同一个页面上有公有的内容,也有非公有的内容,通过一个按钮进行切换来显示不同的内容(通过ajax实现):
   前台页面:(这句话放到单选按钮里面,这样后台就能知道切换后往后台传的值)
          <p:ajax immediate="true" listener="#{userBean.userTypeChange}" update=":theShowPage" />
   注释:
          immediate="true"表示跳过验证立即执行;

        update=":theShowPage"表示切换完按钮后更新的页面。

  后台页面:

          public void userTypeChange(AjaxBehaviorEvent event) {
          Object item = ((SelectOneMenu) event.getSource()).getSubmittedValue();
           int role= Integer.parseInt((String.valueOf(item)));
         if (newValue == "管理员") {
          user.setUserType(1);
         }
           }

   前台页面如果要显示不同的值,可以在同一个页面上用rendered属性,这种验证能通过int型或boolean类型进行显示,String类型的不行例如:

         rendered="#{userBean.user.userType==1}"

详细的一种写法: bean页面: private String province; private String city; public String getProvince() { return province; } public void setProvince(String province) { this.province = province; } public String getCity() { return city; } public void setCity(String city) { this.city = city; } List selectItemList = new ArrayList(); public List getSelectItemList() { return selectItemList; } public void changeProvince(AjaxBehaviorEvent event) { String selectedValue =String.valueOf(((HtmlSelectOneMenu)event.getSource()).getSubmittedValue()) ; if (selectedValue.equals("hbs")) { selectItemList.add(new SelectItem("2", "Label2")); } else { selectItemList.add(new SelectItem("1", "Label1")); } }

转载于:https://my.oschina.net/u/990438/blog/132956

你可能感兴趣的文章
在项目中遇到的一些bug
查看>>
理解这几张图,你就是js小牛了
查看>>
企业云计算指南:在安全前提下获得利益
查看>>
【每日一包0029】merge-descriptors
查看>>
以太坊和Metamask开发web应用时不再需要密码
查看>>
NEO改进协议提案2(NEP-2)
查看>>
小程序的项目结构设计
查看>>
vue 表单验证按钮事件交由父组件触发
查看>>
Python 类的属性与实例属性
查看>>
精读《Epitath 源码 - renderProps 新用法》
查看>>
Angular和SAP C4C的事件处理队列
查看>>
浅谈移动端中的视口(viewport)
查看>>
Elasticsearch 参考指南(介绍)
查看>>
使用shouldComponentUpdate进行性能优化
查看>>
CSS导航条菜单:带小三角形
查看>>
matplotlib嵌入到pyqt中
查看>>
Lombok框架集成与原理解析
查看>>
C++ Primer plus 第12章类和动态内存分配复习题参考答案
查看>>
Python3 turtle教程
查看>>
浅析面向对象开发
查看>>