切换到tabView中的选项卡,输入无效

无效数据

问题真的很简单。我有一个带有多个选项卡的选项卡视图:

<h:form>
    <p:tabView id="tabView">
        <p:tab>
            <p:inputText required="true"></p:inputText>
        </p:tab>
        <p:tab>
            <p:inputText required="true"></p:inputText>
        </p:tab>
    </p:tabView>
    <p:commandButton value="submit" action="#{myBB.submit}" update="tabView"/>
</h:form>

我想在客户端验证失败时切换到缺少字段的选项卡。我认为这必须是选项卡中表单的常见用例,但是我找不到任何解决方案。

我唯一能想到的就是对提交按钮执行一些oncomplete操作,该操作将通过DOM并找到无效的组件,但是对于我认为应该是默认行为的事情来说似乎过于复杂。

无效数据

因此,我找到了一种方法。在ajax完成之后,我创建了一个oncomplete方法来搜索选项卡并选择正确的方法。首先,我不得不修改源代码(只是添加了id和widgetVar):

<h:form>
  <p:tabView id="tabView" widgetVar="tabViewWv">
    <p:tab id="tab1">
        <p:inputText required="true"></p:inputText>
    </p:tab>
    <p:tab id="tab2">
        <p:inputText required="true"></p:inputText>
    </p:tab>
  </p:tabView>
  <p:commandButton ... oncomplete="switchToInvalidTab()"/>
</h:form>

和javascript:

    function switchToInvalidTab() {
        var lastIndex = 0;
        var tabParent = '#mainForm\\:tabView\\:';
        var tabs = ['tab1', 'tab2']; //can add more, but the order must be the same as in form
        tabs.some(function (tabName){
            if ($(tabParent + tabName)) { //tab may not exist in my app
                if ($(tabParent + tabName).find(':input').hasClass('ui-state-error')){
                    PF('tabViewWv').select(lastIndex);
                    return true;
                }
                lastIndex++;
            }
            return false;
        });
    }

我的应用程序中有更多选项卡,某些选项卡有时不存在,并且此代码适用于所有情况。也许对某人有帮助

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

通过在Vim中输入名称来切换到特定选项卡?

来自分类Dev

键盘快捷键,切换到SSMS中的“结果”选项卡

来自分类Dev

在文本编辑器中按文件名切换到选项卡

来自分类Dev

切换到记事本++中的第一个选项卡

来自分类Dev

如何在Vimperator中快速切换到已打开的选项卡(缓冲区)

来自分类Dev

无法在 MAC 上使用 JAVA 在 Selenium Webdriver 中创建或切换到新选项卡

来自分类Dev

如何在Visual Studio 2013中使用键盘切换到其他选项卡组

来自分类Dev

量角器切换到上一个选项卡

来自分类Dev

Bootstrap-单击链接后,切换到选项卡并移至锚点

来自分类Dev

如何在Selenium中切换到活动选项卡?

来自分类Dev

Android登录屏幕可以切换到选项卡布局吗?

来自分类Dev

ColdFusion布局,CFlayout,无法切换到父选项卡

来自分类Dev

如何打开从命令行到Firefox的URL,然后“切换到选项卡”?

来自分类Dev

阴谋而有光泽:onclick将选项卡切换到创建的阴谋

来自分类Dev

如何打开从命令行到Firefox的URL,然后“切换到选项卡”?

来自分类Dev

Android登录屏幕可以切换到选项卡布局吗?

来自分类Dev

如何切换到我正在处理特定文件的选项卡?

来自分类Dev

命令切换到最后一个终端选项卡

来自分类Dev

单击通知时切换到发送通知的选项卡?

来自分类Dev

在选项卡中的选项卡之间切换

来自分类Dev

在选项卡中的选项卡之间切换

来自分类Dev

在片段TabHost中的选项卡之间切换

来自分类Dev

TabView nativescript 中的动态选项卡

来自分类Dev

创建后,为什么Firefox仍会切换到新选项卡?没有打勾“当您在新标签页中打开链接时,请立即切换到该链接”

来自分类Dev

切换选项卡时使上下文操作栏无效

来自分类Dev

Android片段-切换到其他选项卡时调用OnDestroy,然后返回到选项卡时调用OnCreate吗?

来自分类Dev

如何从一个选项卡切换到另一个选项卡Xamarin IOS

来自分类Dev

我正在使用UWP winUI,并且我试图动态切换tabView选项卡上的内容,但是失败

来自分类Dev

在其他选项卡中显示选项卡栏控制器中的视图控制器而无需切换选项卡

Related 相关文章

  1. 1

    通过在Vim中输入名称来切换到特定选项卡?

  2. 2

    键盘快捷键,切换到SSMS中的“结果”选项卡

  3. 3

    在文本编辑器中按文件名切换到选项卡

  4. 4

    切换到记事本++中的第一个选项卡

  5. 5

    如何在Vimperator中快速切换到已打开的选项卡(缓冲区)

  6. 6

    无法在 MAC 上使用 JAVA 在 Selenium Webdriver 中创建或切换到新选项卡

  7. 7

    如何在Visual Studio 2013中使用键盘切换到其他选项卡组

  8. 8

    量角器切换到上一个选项卡

  9. 9

    Bootstrap-单击链接后,切换到选项卡并移至锚点

  10. 10

    如何在Selenium中切换到活动选项卡?

  11. 11

    Android登录屏幕可以切换到选项卡布局吗?

  12. 12

    ColdFusion布局,CFlayout,无法切换到父选项卡

  13. 13

    如何打开从命令行到Firefox的URL,然后“切换到选项卡”?

  14. 14

    阴谋而有光泽:onclick将选项卡切换到创建的阴谋

  15. 15

    如何打开从命令行到Firefox的URL,然后“切换到选项卡”?

  16. 16

    Android登录屏幕可以切换到选项卡布局吗?

  17. 17

    如何切换到我正在处理特定文件的选项卡?

  18. 18

    命令切换到最后一个终端选项卡

  19. 19

    单击通知时切换到发送通知的选项卡?

  20. 20

    在选项卡中的选项卡之间切换

  21. 21

    在选项卡中的选项卡之间切换

  22. 22

    在片段TabHost中的选项卡之间切换

  23. 23

    TabView nativescript 中的动态选项卡

  24. 24

    创建后,为什么Firefox仍会切换到新选项卡?没有打勾“当您在新标签页中打开链接时,请立即切换到该链接”

  25. 25

    切换选项卡时使上下文操作栏无效

  26. 26

    Android片段-切换到其他选项卡时调用OnDestroy,然后返回到选项卡时调用OnCreate吗?

  27. 27

    如何从一个选项卡切换到另一个选项卡Xamarin IOS

  28. 28

    我正在使用UWP winUI,并且我试图动态切换tabView选项卡上的内容,但是失败

  29. 29

    在其他选项卡中显示选项卡栏控制器中的视图控制器而无需切换选项卡

热门标签

归档