如果我不离开单元格/字段,Primefaces就不会识别单元格/字段的值
Primefaces doesn't recognize the value of the cell/field if I don't leave the cell/field.
我在PrimeFaces中保存网格数据时遇到了这个问题。当我在单元格中设置值,然后改变另一个又一个单元格,点击这里和那里,然后我点击保存按钮,一切都很完美。但是,如果我没有退出单元格(更改焦点),而只是单击保存按钮,那么最后一个单元格的值就会丢失。
这是我的手机号码:
<p:cellEditor>
<f:facet name="output"><h:outputText style="text-transform: uppercase" value="#{bBean.someData}" /></f:facet>
<f:facet name="input">
<p:inputText style="text-transform: uppercase" value="#{bBean.someData}" label="Some data">
</p:inputText>
</f:facet>
</p:cellEditor>
如果没有触发某个事件,看起来PrimeFaces无法识别更改。
任何想法?
给你的<p:inputText>
onmouseout
事件,你可以额外节省值,当用户离开细胞与鼠标指针:<p:ajax event="mouseout" process="@this" partialSubmit="true"/>
好的,现在我确定修复了:)我创建了一个隐藏按钮:
<p:commandButton process="@this" style="display:none !important" id="btn" value="SB"/>
和一个javascript函数,将模拟点击隐藏按钮:
function takefocus(){
$(PrimeFaces.escapeClientId('form:btn')).click();
}
和我添加到保存按钮,之前调用save:
<p:commandButton value="Save" onclick="takefocus();PF('waitDialog').show();saveData();"/>
,它工作正常。
以下内容适用于Firefox,但不适用于Chrome。所以,如果你找到一个更好的解决方案,请在这里分享。
<p:inputText onblur="triggerChange(this)... />
function triggerChange(el) {
var e = jQuery.Event('keydown');
e.which = 13;
e.keyCode = 13;
$(el).trigger(e);
}
相关文章:
- 模拟文本输入字段上的退格键
- 根据输入字段中键入的数字更改td单元格的颜色
- 在输入字段之前提取表格单元格中的文本
- 如何使用ng网格在单元格模板上应用字段
- 光滑网格 - 获取选定的单元格值,ID和字段
- SlickGrid:单元格中具有两个日期字段的复合编辑器
- 获取上述td单元格的数据字段
- 必填字段,具有相同形式的两个子单元按钮
- 跟踪是否在输入字段中按了退格键或删除键
- 如何在表格单元格中插入输入字段
- 如何抑制退格时,日期字段日历是活跃的extjs 4,特别是在IE中
- 如果我不离开单元格/字段,Primefaces就不会识别单元格/字段的值
- D3表,对象沿x轴,字段沿y轴.如果满足字段条件,则将单元格着色
- 按钮添加行并从文本字段输入单元格值
- 使用jasmine对输入字段进行单元测试
- 如何刷新具有cellFilter的ui-grid单元格,以便在一个单元格中显示绑定实体的多个字段
- 在TH单元格中调整选择字段
- 单击大表格中的单元格并插入该单元格's的内容输入到表单字段中
- 从表格单元格的输入字段中获取事件 .focusout
- 将输入字段的值复制到下一个表格单元格中相应的输入字段