成功的ajax调用后数据表不更新

2023-11-23

我有一个数据表。表的每一行都有一个commandButton called 'Remove',这应该从模型和视图中删除该行并就地执行更新。作为页脚,我还有另一个commandButton called '删除每一行'.

最后一个按钮有效。我单击它,每一行都会从模型中删除(即ArrayList包含元素变为空)并且dataTable and footer facet在视图中重新渲染(或更新)。

另一方面,当我单击其中一行上的按钮将其删除时,它部分起作用。相应的元素已从模型中删除,但视图未更新。该行仍然存在于dataTablefooter facet没有改变。

我的代码中有以下一段代码users.xhtml.

<f:metadata>
    <f:viewParam name="id" value="#{users.id}" />
    <f:event type="preRenderView" listener="#{users.init}" />
</f:metadata>

...

<h:form id="usersForm">
    <p:outputPanel>    
        <p:dataTable id="userTable" value="#{users.user.friendList}" var="friend">
            <p:column>
                <h:outputText value="#{friend.name}" />
            </p:column>
            <p:column>
                <p:commandButton action="#{users.user.removeFriend(friend)}"
                    ajax="true"
                    update="userTable somethingElse" process="@this"
                    onerror="errorDialog.show();"
                    icon="ui-icon-delete"
                    title="delete user">
                </p:commandButton>
            </p:column>

            <f:facet id="somethingElse" name="footer">  
                    aye: ${users.user.xxx}
            </f:facet>
        </p:dataTable>

    </p:outputPanel>

    <p:commandButton action="#{users.user.removeAllFriends()}" ajax="true"
                update="userTable somethingElse"
                process="@this"
                icon="ui-icon-close"
                value="delete all friends?">
    </p:commandButton>


</h:form>

那么,您认为这里的问题是什么?

我正在使用 JSF 2.0 和 Primefaces 3.0


我从我们当前的 PF 3.0 页面之一中发现了这个问题。如果你使用它会起作用update="@form"反而。我还没有时间去调查真正的原因,以便我可以将其报告给 PF 人员,因为这个问题并未在所有页面中出现。即使在同一张表中,不同的按钮也会按预期工作。

试一试:

<p:commandButton update="@form" ... />

Update: 仔细想想,这可能与存在有关process="@this".

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

成功的ajax调用后数据表不更新 的相关文章

随机推荐

  • Google Drive API 如何找到文件的路径?

    我试图在使用 Google Drive API 获取文件列表时找到文件的路径 现在 我可以获取文件属性 当前仅获取校验和 id 名称和 mimeType results globalShares service files list pag
  • getWindowVisibleDisplayFrame() 在 Android 2.2、2.3 中给出不同的值(但不是 2.3.3)

    我有一个Activity它使用 getWindow getDecorView getWindowVisibleDisplayFrame rectangle 确定可用的屏幕空间并决定放置图像的位置 单击硬件 后退 按钮离开后返回活动Activ
  • hibernate @ManyToMany 双向急切获取

    我有一个我认为应该很常见的问题 但我找不到答案 我有 2 个对象 组和用户 我的课程看起来像这样 class Group ManyToMany fetch FetchType EAGER List
  • 使用 Rcpp 在 R 包中添加外部库

    我正在尝试开发一个 R 包 它使用Sundials用于求解微分方程的 C 库 为了不让用户安装该库 我将该库的源代码放在我的包中 我已将库中的所有头文件放入 inst include sundials 2 6 2和 c文件在src sund
  • 如何使用 QTextEdit 结束行

    我正在尝试创建QTextEdit有一些文本 在这段文本中我有行尾字符 n 但它不被接受QTextEdit对象 整个文本显示 没有任何中断 有什么理由吗 如果您使用的是 Qt 4 3 或更高版本 那么您可以使用 您可以使用以下命令关闭富文本编
  • 如何创建 dotnet core 单个可执行文件

    我想将我的 dotnet core 项目配置为编译为单个可执行文件 该项目与使用生成的项目类似dotnet new version 1 0 0 buildOptions debugType portable emitEntryPoint t
  • 为什么使用 QuantifiedConstraints 指定类型类的子类还需要子类的实例?

    我正在尝试多种无标签编码Free LANGUAGE PolyKinds LANGUAGE TypeSynonymInstances LANGUAGE TypeFamilies LANGUAGE Rank2Types LANGUAGE Fle
  • 如何从文本输入将锚标记添加到 URL

    我希望能够在评论字段中获取用户输入的文本并检查 URL 类型表达式 如果存在 则在显示评论时添加锚标记 到 url 我在服务器端使用 PHP 在客户端使用 Javascript 带有 jQ uery 所以我应该等到 URL 显示之前才检查它
  • 对 XML 模式进行版本控制的最佳实践是什么?

    我经常需要为不同的基于 XML 的导入例程设计 XML 模式 很明显 XML 模式会随着时间的推移而发展 或者它们可能包含需要修复的错误 因此捕获模式的版本并拥有某种机制来绑定特定版本非常重要 目前我有两种情况 该错误是在架构中发现的 并且
  • 将 2D 数组组合到 3D 数组

    你好 我有 3 个 numpy 数组 如下所示 gt gt gt print A 1 0 0 3 0 0 5 2 0 2 0 0 1 2 1 gt gt gt print B 5 9 9 37 8 9 49 8 3 3 3 1 4 4 5
  • 确定浮动元素中的换行位置

    假设我有六个 div 容器内的元素 div 这六个 div 中的每一个都是一个正方形并且具有 CSS 样式float left应用 默认情况下 当它们到达容器的边缘时 div 他们会包裹起来 现在 我的问题是 使用Javascript 是否
  • 实现可扩展性的最佳数据访问范例是什么?

    微软提供了许多不同的数据访问选项 哪一种最适合可扩展的应用程序 Linq 我们应该使用 Linq 吗 这看起来确实很简单 但如果您了解 SQL 它确实会有帮助 我还听说您无法使用 Linq 在 ASP NET 中运行异步查询 因此我想知道它
  • 如何使用 BeautifulSoup 获取选项文本

    我想使用 BeautifulSoup 来获取以下 html 中的选项文本 例如 我想获取 2002 12 2003 12 等
  • 使用Python/PIL裁剪图像的非对称区域

    有没有办法剪掉non使用 Python PIL 绘制图像的矩形区域 例如在这张图片中 我想排除所有黑色区域以及塔 屋顶和电线杆 http img153 imageshack us img153 5330 skybig jpg 我猜是图像路径
  • 函数模板可以用作高阶函数调用中的一等公民吗?

    将函数模板作为参数传递给另一个函数模板总是有点棘手 通常 人们必须创建一个 lambda 对象来调用原始函数 Example template
  • 在 Swift 中实现哈希组合器

    我正在延长一个struct符合Hashable 我将使用DJB2哈希组合器来完成此操作 为了使编写其他东西的哈希函数变得容易 我想扩展Hashable协议 以便我的哈希函数可以这样写 extension MyStruct Hashable
  • 数据库架构更改时 Azure 无缝升级

    假设我有一个生产部署和临时部署 两者都使用自己的 SQL Azure 数据库 如果暂存中的模式已更改并且需要部署到生产中 是否有一种定义的方法可以在生产数据库上实现数据库升级 无需停机 例如如果我交换 VIP staging 生产 同时以某
  • 如何为字符串数组中的每个元素添加字符串前缀?

    我想知道在Java中是否有一个函数可以将定义的字符串添加到字符串数组的每个字符串的开头 例如 my function apple orange ant eat an would return eat an apple eat an oran
  • 无法更新在 AFTER INSERT 中执行触发器的表

    我正在运行 MySQL 5 5 9 和 InnoDB 我尝试创建一个版本化表 其中current字段指示记录是否是最新版本 就像是 autonumber id name current 1 1 Yes 0 2 1 No 1 不管怎样 我过去
  • 成功的ajax调用后数据表不更新

    我有一个数据表 表的每一行都有一个commandButton called Remove 这应该从模型和视图中删除该行并就地执行更新 作为页脚 我还有另一个commandButton called 删除每一行 最后一个按钮有效 我单击它 每