gpt4 book ai didi

jsf - 在 JSF 数据表中清除 InputText 的问题

转载 作者:行者123 更新时间:2023-12-01 01:35:36 24 4
gpt4 key购买 nike

我正在尝试使用取消按钮重置数据表内的一些输入文本字段。我遇到的问题是,如果我尝试取消它,但存在验证错误,它不允许我这样做,因为它首先进行验证,发现并出错,并在它可以重新呈现之前输出错误。

显而易见的解决方案是在按钮上设置“immediate=true”。这消除了这个问题,并允许我在没有验证的情况下取消但字段本身未设置为其原始值。这是因为组件本身永远不会从支持 bean 重新获取数据,因为 immediate 设置为 true。

这在这篇文章中有很好的解释:http://wiki.apache.org/myfaces/ClearInputComponents

这篇文章提出了许多解决方案,但没有一个对我有用。

  • 我必须保持在同一页面上,因此不能更改 View 。
  • 我无法重置页面上所有输入字段的值,因为我只想重置我取消的“行”
  • 我似乎无法将组件绑定(bind)到任何输入字段,因为它们位于数据表中,输入字段本身的“绑定(bind)”属性不能引用“var”变量。例如,以下“绑定(bind)”属性是非法的,并给我一个错误:

    <冰:列>

    这可能与仅作为请求范围的“var”有关。

    无论如何,有人对如何使它工作有任何想法吗?

  • 最佳答案

    使用 JSF 这样做很痛苦。您对验证几乎没有控制权。最好的办法是使用 JavaScript 来重置这些值。它只用几行(或一个带有 jQuery 的单行)完成,而不是几十到几百行,你可以用 jsfish 方式解决这个问题。

    关于jsf - 在 JSF 数据表中清除 InputText 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2315417/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com