Primefaces ajax根据backbean结果更新不同的面板

2023-12-05

我是 JSF、Primefaces 和 Ajax 的新手,所以我想要做的是,如果我的 back bean 上的验证为 true,则更新一个面板;如果为 false,则更新另一个面板。

<h:panelGroup id="panel1">
    ...
    <h:commandButton id="btn1" action="#{bean.validate}">
        <p:ajax process="panel1" update="panel1"/>
    </h:commandButton>
</h:panelGroup>

<h:panelGroup id="panel2">
    ...
</h:panelGroup>

后豆:

public void validate() {
    ...
    if(validatecondition) {
        // Update panel 1
    } else {
        // update panel 2
    }
}

那么使用ajax可以做到这一点吗?提前致谢!!


当然,有两种方法。由于您使用的是 primefaces,因此两个选项中更简单的一个是

  1. Use the 请求上下文反对有选择地更新面板。您的代码将如下所示:

     public void validate() {
       RequestContext context = RequestContext.getCurrentInstance();
       if(validatecondition) {
         context.update("panel1");
       } else {
         context.update("panel2");
       }
    }
    
  2. JSF PartialViewContext可以做同样的工作,只需多打字一点

    FacesContext ctxt = FacesContext.getCurrentInstance(); //get your hands on the current request context
         if(validatecondition) {
             ctxt.getPartialViewContext().getRenderIds().add("panel1");
           } else {
             ctxt.getPartialViewContext().getRenderIds().add("panel2");
           }
    

The getRenderIds()调用返回一个组件 ID 列表,JSF 将在响应完成时通过 ajax 更新该列表。基本上就是这样RequestContext在 primefaces 中就可以在幕后进行。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Primefaces ajax根据backbean结果更新不同的面板 的相关文章

  • 如何在 JSF 中禁用页面/表单

    对于我的应用程序 我希望拥有具有不同权限的用户 一种权限允许用户查看我的数据库中的数据 而另一种权限允许他们编辑数据 登录时 我会检查他们的权限以确定他们是否可以编辑数据 如果用户具有只读权限 我正在寻找某种方法来禁用整个页面 有没有一种简
  • Web API 2.0 使用 pascalcase 模型接收驼峰式命名的 JSON 数据

    我正在尝试对我的 Web API 进行 PUT 调用 我在 WebApiConfig cs 中设置了以下内容 以处理以驼峰形式将数据发送回我的 Web 项目 config Formatters JsonFormatter Serialize
  • 使用 ASP.Net 和 Ajax 的登录页面

    我正在尝试使用 html ajax 和 ASP NET 制作登录页面 数据确实传递给 ajax 函数 但是当我调试 asp 页面时 用户名和密码以 NULL 发送 该代码应该获取用户名和密码 然后返回用户 ID html页面 div Use
  • jQuery mCustomScrollbar 不适用于 ajax 内容

    window load function content 1 mCustomScrollbar scrollButtons enable true ajax code function beauty of ceylon content te
  • 如何使用 .net 2.0 中的 WebBrowser 控件检查 ajax 更新?

    我有一个网页正在使用 WebBrowser 控件在 winform 应用程序中显示 我需要在网页中的 HTML 发生变化时执行一个事件 但是 我找不到通过 Ajax 更新页面时触发的事件 DocumentComplete FileDownl
  • Internet Explorer 中的 AJAX 问题

    这在 FF safari chrome 和 opera 中工作得很好 但在 IE 中却不行 错误代码是403 var datau trends php 3Frastgele 3D33 ajax type GET url loader php
  • 设置开始日期后设置 primefaces 日历结束日期

    我正在使用 primefaces 日历来创建事件 使用 mindate 参数 我禁用了当天之前的日子 即使有结束日期 我也想这样做 禁用开始日期之前的日子 我不知道如何处理这个问题 因为支持 bean 仅在验证整个表单后才获取开始日期 我需
  • 该页面是通过 HTTPS 加载的,但请求了不安全的 XMLHttpRequest 端点

    我正在调用一个rest APIHttps已部署的应用程序 到Http休息 API 我使用 Angular Js 框架用 JavaScript 编写了逻辑 Web 服务调用失败并显示以下消息 https someurl 处的页面是通过 HTT
  • 将 Json 数据返回给 Ajax 调用

    我在 MVC 中有一个方法 我将其发布到它 并且我需要返回一些数据以进行处理 这是我发布到的 MVC 方法 返回值是 json 数据 HttpPost public JsonResult GetCalculateAmortizationSc
  • a4j:commandLink 重新渲染后停止工作

    我创建了这个测试用例来隔离我的问题 一旦轮询执行 ajax 更新 a4j commandLink 操作就不会执行 如果我们在轮询重新渲染之前关闭 modalPanel 则会执行它 有什么建议吗 提前致谢 测试 xhtml
  • Jquery Ajax 调用返回 403 状态

    我有一个 jquery Ajax 调用来实现会话的 keepalive 这个 keepAlive 方法将每 20 分钟调用一次 function keepAlive ajax type POST url KeepAliveDummy asp
  • Yii框架异步请求

    我有一个执行 3 个任务的 ajax 请求 保存模型 数据库 发电子邮件 给出成功或失败的消息 因为这个任务需要的时间太长了 用户最多可以等待 20 秒以获得响应 成功或失败消息 如果用户关闭浏览器 则其会停止用户当前进程的操作之一 这是糟
  • 如何将 Ajax 与 jQuery 结合使用

    function ajaxFunction var ajaxRequest The variable that makes Ajax possible try Opera 8 0 Firefox Safari ajaxRequest new
  • QTP Web 可扩展性工具包和 ajax

    我正在尝试使用 QTP 测试一个使用 ajax4jsf 来实现 ajax 功能的 Web 应用程序 QTP 无法识别 ajax 何时完成 我读到 QTP 9 5 和 QTP 10 提供的 Web 可扩展性工具包可以解决我的问题 但是 我不明
  • 邮件附件媒体类型错误 Gmail API

    我正在尝试通过 Javascript 客户端中的 Gmail API 发送带有附加 jpeg 文件的消息 到目前为止我写的代码如下 ajax type POST url https www googleapis com upload gma
  • AJAX(原型/java)在执行期间获取部分状态更新

    这部分模仿了AJAX 原型 php 在脚本执行期间获取部分状态更新 https stackoverflow com questions 800997 ajax prototype php getting partial status upd
  • CORS 问题从 React 应用程序 > 节点服务器 > 重定向到 Google OAuth2 身份验证发出 AJAX 请求

    大家好 过去两天我一直在绞尽脑汁研究这个问题 但没有运气 这是我在尝试从我的 React 应用程序 localhost 3000 使用 Google Oauth2 Passport 策略进行身份验证时遇到的错误 我正在 localhost
  • 提交Ajax表单后如何用消息更新_Layout.cshtml中的DIV?

    目前我有一把剃须刀View像这样 TotalPaymentsByMonthYear cshtml model MyApp Web ViewModels MyViewModel using Ajax BeginForm TotalPaymen
  • 根据通过 AJAX 请求的用户输入重绘 google 图表

    我有一个谷歌图表从我的数据库中提取数据 它可以按我想要的方式工作 根据 URL 中的 get 请求 它从所选表中提取数据 我想根据下拉菜单中选定的表通过 ajax 更新此图表 我无法突破的部分是通过 ajax 获取数据响应 我认为下面的代码
  • 使用jquery和coldfusion cffile上传多个文件

    不是一个真正的问题 只是想将其发布在某个地方 因为我在其他地方找不到它 现在我已经拼凑了一个工作演示 我想我会分享 这在 Coldfusion 和 Railo CFML 服务器上同样有 效 问题是 对于 CFML 开发人员来说 CFFILE

随机推荐

  • 从其他类添加对象到 NSMutableArray

    我有一个名为的视图控制器类PresidentsViewController在a中设置数据UITableView 该数据的形式为NSMutableArray called list 我还有一堂课PresidentAddController 应
  • exim4-config 脚本自动化?

    我需要在多个服务器上设置 exim4 但是我想知道是否可以创建一个脚本来自动完成安装过程并使用我的主机名在 exim4 上设置它 sudo dpkg 重新配置 exim4 config 第 1 步 顶部选项 互联网站点 直接使用 SMTP
  • 如何从 Matlab 程序调用 java 代码

    我想从 Matlab 调用我自己的 Java 程序 这是我的java程序 public class TestArgu public static void main String args System out println Test p
  • ADB 拒绝 shell 命令 (ls -l ):已关闭

    当我尝试运行我的项目时出现错误 ddms ADB rejected shell command ls l closed 我不明白为什么会发生这种情况以及如何解决 每次运行项目时都会显示此信息 我试过 1 Close emulator and
  • Swift 中的正则表达式模式匹配和替换

    我有如下字符串 Hi this is 1 s product 2 s Hi this is 2 s product 2 s 我想更换 1 s由 0 以及 2 s由 1 等等 我尝试过 let range NSRange location 0
  • 贝宝返回网址

    这是我的 Paypal 按钮的代码
  • C# 使用 OpenXML 替换 CustomXml 不起作用

    以下是我用来从现有文档创建新 Word 文档的代码 起作用的是它成功读取模板文档 templateName 并且能够从模型类创建 customXML 字符串 但不起作用的是 customXML 信息 地址 城市 州 邮政编码 没有替换空标签
  • chrome.infobars Chrome 工具栏 API 的发布时间表

    我不了解 Chrome 中工具栏 API 的状态 根据 2013 06 24 的回答如何在 Google Chrome 中制作工具栏 有一个chrome experimental infobarsAPI 在 Chrome 中可用 并且已准备
  • 连接到数据库时出错:(使用类 org.gjt.mm.mysql.Driver)

    我正在尝试在 Pentaho 5 3 0 0 213 中建立到本地主机上 mysql 的连接 我使用的是运行 OS 10 10 2 的 Mac 我可以使用 Sequel Pro 连接到数据库 并阅读了本网站 以及其他网站 上已经给出的所有答
  • 如何在匿名函数/闭包中动态访问变量?

    为了保持全局命名空间干净 我的 JavaScript 代码是这样包装的 function my code 现在我在这个范围内声明了一些变量 我想使用变量变量名来访问它们 例如名称是 something someVar 在全球范围内我只需使用
  • AS3 不接受构造函数

    好吧 我已经提出这个问题一千次了 到目前为止没有人能够帮助我 我再次加注是因为我发现了一些新东西 过去我无法为类对象创建参数 每次这样做时都会出现以下错误 1136 Incorrect number of arguments Expecte
  • 将标题添加到 csv 文件

    我有一个 csv 文件 其中包含尺寸100 512 我想进一步处理它spark 该文件的问题是它不包含标头 即column names 我需要这些列名以进行进一步的 ETLmachine learning 我在另一个文件 文本文件 中有列名
  • apache反向代理更改url

    我尝试在服务器上配置 apache 反向代理以将请求从 hot 重定向到http gateway messenger hotmail com 在浏览器中输入地址xxx xxx xxx xxx hotm 请求已正确重定向 但地址栏中的url变
  • 使用 Python 对数据集进行分组和聚合

    我有一个数据集 df 我想在其中按特定列进行分组并获取其他列的聚合 df version host date name purpose date pat A 12 1 2019 pat hi 12 1 2019 fam A 12 1 201
  • 如何向 Threejs 添加可编辑的文本和图像

    所以我尝试使用 Fabric js 将新图像和文本添加为 3D 对象的纹理到我的 3D 配置器 我使用此代码作为代码库https github com devramkumardnagarajan 3d Tshirt design以及 Fab
  • 如何在同一个图上绘制两列数据,其中 x 轴由文件行号暗示(使用 gnuplot)

    我有包含两列数字的文本文件 我将其称为 col1 和 col2 我可以使用 gnuplot 绘制 col2 与 col1 的图 反之亦然 但我无法弄清楚如何绘制 col1 和 col2 即覆盖两列数据 作为文件中行号的函数 即 x 轴由文件
  • Ruby 1.9 Ramaze 应用程序因“非法指令”而失败

    我有一个应用程序 在擦除系统并安装 Snow Leopard 后 我正尝试使其再次运行 我从 Macports 现在是更高版本 安装了 Ruby 1 9 开发服务器启动得很好 但在第一个请求时就死掉了 只告诉我 非法指令 我不知道是什么原因
  • ruby install Rails 报错 ---无法构建 gem 本机扩展。(Windows 平台)

    Ruby 新手 刚刚开始 Rails 之旅 已经搜索过 stackoverflow 但很多这些问题都是很久以前的事了 我的英文不好 请耐心看我的描述 这是我的情况 希望我说清楚 I m on windows 当我在线学习 Ruby 课程时
  • 编辑模式下 DatagridView 中的组合框

    我有一个只读模式设置为 true 不可编辑 的 DataGridView 它在表单加载时从数据库获取值 当我将只读模式设置为 false 可编辑模式 时 我希望特定列 例如部门 显示为组合框 以便我可以从那里选择值 当我进入只读模式时 Co
  • Primefaces ajax根据backbean结果更新不同的面板

    我是 JSF Primefaces 和 Ajax 的新手 所以我想要做的是 如果我的 back bean 上的验证为 true 则更新一个面板 如果为 false 则更新另一个面板