- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 Web 应用程序,我在其中使用 JSF + Primefaces 作为 UI。在使用 AJAX 调用(如对数据表的 rowSelect 事件的 AJAX 调用)时,我在网页上应用脏检查时遇到困难。
以下是我想通过 AJAX 调用应用脏检查的确切场景。以下是我在网页中使用的组件。
1) 我有一个数据表,由名为“companyBean”的 bean 填充(具有公司属性)
<p:dataTable id="basic" var="company" value="#{companyInfoBean.companyList}"
rowKey="#{company.id}"
selection="#{companyInfoBean.selectedCompany}" selectionMode="single">
<p:ajax event="rowSelect" update=":customerDataForm:customerDataFields" />
<p:column id="modelHeader">
<f:facet name="header">
<h:outputText value="Company Name" />
</f:facet>
<h:outputText value="#{company.companyName}" />
</p:column>
more columns....
</p:dataTable>
如上所示,在所选行上(AJAX 调用)我更新页面底部表单中的值
<h:form id="customerDataForm">
<p:panel id="customerDataFields">
<p:panelGrid >
<p:row>
<p:column>
<h:outputLabel for="companyname" value="Company Name " />
</p:column>
<p:column>
<p:inputText id="companyname" value="#{companyInfoBean.selectedCompany.companyName}" label="Company Name" />
</p:column>
more columns...
<p:row>
<p:column colspan="2" style="text-align:right">
<p:commandButton value="Save" actionListener="#{companyInfoBean.updateCompany}"
update=":customerDataForm:customerDataTable"/>
</p:column>
<p:column colspan="2" style="text-align:left">
<p:commandButton value="Undo" />
</p:column>
</p:row>
在上面的表单中,用户可以编辑在数据表的 rowSelect 上更新的值。
现在我想对数据表上 rowSelection 上的表单进行脏检查,即尽管执行了 rowSelect 的 AJAX 调用,但如果用户使用的表单上有一些未保存的更改会被提示。
基本上我可以从这个场景中理解.. 我需要一些基于条件的 AJAX 调用而不是直接调用。或者我必须使用一些 jQuery 东西来实现脏检查。
最佳答案
您可以通过不同的方式实现这一点。这里有一些(如果弹出窗口没问题,我更喜欢方法 3):
a) 使用 selectedCompany 的副本,例如 editCompanyBean 作为支持 用于客户数据字段的 bean。
b) 为ajax事件添加一个“监听器” 这可以在设置之前检查 editCompanyBean 的空值 这与 selectedCompany 的值(value)观。如果失败,你可以咆哮 消息并阻止复制。 注意:您可以使用覆盖开关来覆盖 (b)
c) 在保存 editCompanyBean 时将其初始化为 null 字段值。
a) 在 selectedCompany 的 set 语句中检查 bean 是否已经填充了值。如果填充并跳过编辑,则抛出警告消息。
b) 让用户在继续之前点击 customerDataFields 上的保存或重置。
注意:每次保存或重置 customerDataFields 后清除 selectedCompany
a) 将 customerDataFields 放入模态弹出对话框中。将其设置为用户必须在继续之前保存或重置。
b) ajax 事件将弹出上面的模态对话框。您也可以使用按钮弹出。
关于java - 脏检查 : JSF + Primefaces application?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10883055/
Android 似乎真的不喜欢invalidate (Rect dirty),它用于仅使 Canvas 的一部分无效。当我使 Canvas 的一部分(下面以绿色显示)无效并且需要同时重绘 Canvas
来自 Leoliger 2ed 的 Git 版本控制, After you commit the addition of the new file into the repository, git s
我使用基本的 Valgrind 工具时出现了意外行为。对于基本 block 的每个 Put 语句,我使用以下方法注册一个脏助手unsafeIRDirty_0_N。问题是脏助手被调用的次数比预期的多,例
我想知道是否有人可以告诉我 hibernate 脏 session 是什么?我似乎遇到了一个问题,条件查询在不应该执行插入时执行了插入。我相信这与脏 session 有关,但在不真正了解脏 sessi
我正在尝试构建一个用于通用添加标签的 ADF 映射数据流 - 其目的是查看特定列中的值并将其替换为标签。我已经有了如下所示的数据集(表 B): enter image description here
我需要在刷新所有更改的实体之前编写一些业务逻辑。我尝试过的解决方案之一是 IPreUpdateEventListener。但是这个事件监听器已经将对象非规范化为键值。我需要在非规范化甚至刷新之前的一些
基于此help link我能够实现颜色更改,但在此解决方案中,它将颜色应用于整行,这不是我想要的。 我想更改唯一编辑过的单元格的颜色。如果有人有任何想法,请分享。谢谢。 最佳答案 这是一个带有您想要的
我想做什么? 我正在尝试反编译一个 apk 文件,修改它并重新编译它。 我的工作环境是什么? root@l0calh0st:~/Desktop/APKS/Projects# uname -a Linu
“ps”和“top”等工具报告各种内存使用情况,例如 VM 大小和驻留集大小。但是,这些都不是“真正的”内存使用情况: 程序代码在同一程序的多个实例之间共享。 共享库程序代码在使用该库的所有进程之间共
Martin Fowler说我们应该在添加新功能之前进行重构(假设原始程序结构不佳)。 所以我们都想重构这个脏代码库,这是肯定的。我们还知道,如果没有单元测试代码,就很容易引入细微的错误。 但这是一个
在开始开发一些实验性的东西之前,我创建了一个新分支。我通常会忘记这一点(这不是问题),但现在我事先做了。 从那以后,我更新了 3 个文件。 在 2 中只是我不想提交到安全分支的实验性更改。 在 1 中
这是代码的精简版本: gridDataSource = new kendo.data.DataSource({ batch: true, transport: {
内容: 我正在使用azure广告构建一个简单的登录应用程序,该应用程序可以正常登录并获取 token ,然后可以重定向到下一页,但是在重定向之前会引发错误 错误: The following _Typ
我想将我的摘要字段设置为 body 字段的清理版本,但前提是用户不提供他们自己的摘要,即。 params[:document][:summary] 为空。 如果我创建一个新记录,这似乎工作正常,如果我
我正在使用乐观锁定来防止人们在竞争条件下覆盖彼此的变化。 因为我从 5.1 升级了 Rails至 5.2 ,我的规范坏了,我将其追溯到 changes 中的事实。数组,与文件上传相关的更改不再Uplo
我似乎无法解决这个问题,所以如果有人可以帮助我,请您坚持一下! import 'dart:async'; import 'dart:convert'; import 'package:http/htt
我是一名优秀的程序员,十分优秀!