获取所选 primefaces 数据表行的行号

2023-11-23

我有一个 primefaces 数据表,需要在 JSF 页面中显示(总行数)的(所选行号)。我可以使用 rowIndexVar 属性在其中一列中显示行号,但我不知道要显示在行选择的输入文本中分别使用相同的数字。

我应该在 JSF 页面或托管 bean 中做什么才能获取选定的行号。

请在这方面帮助我。

下面是我的 JSF 页面

<p:dataTable id="workSpaceList" var="data"
            value="#{workSpaceBean.lpInfoList}" widgetVar="multiSelection"
            selection="#{workSpaceBean.selectedRows}" resizableColumns="true"
            liveScroll="true" scrollRows="55" scrollWidth="85%"
            scrollHeight="81%" styleClass="datatable" 
            scrollable="true" rowIndexVar="rowIndex"
            filteredValue="#{workSpaceBean.filteredWorkSpaceItems}">

            <p:column selectionMode="multiple" style="width:3%" />
            <p:column headerText="#" style="width:3%">
                #{rowIndex+1}
            </p:column>
            <p:column headerText="Insured" filterBy="#{data.insuredName}"
                sortBy="#{data.insuredName}" style="width:24%">
                <h:outputText value="#{data.insuredName}" />
                <!--   style="width:250px" -->
            </p:column>

            <p:column headerText="City" filterBy="#{data.custAddress_City}"
                sortBy="#{data.custAddress_City}" style="width:12%">
                <h:outputText value="#{data.custAddress_City}" />
            </p:column>
            .
            .
            .
            .

        </p:dataTable>

我相信没有直接的方法可以做到这一点。尽管使用两个 ajax 请求不太好,但您至少可以达到使用普通 PrimeFaces 时所期望的结果。如果您替换了p:ajax与 PrimeFaces 扩展pe:javascript它不会与服务器进行往返

数据表呈现的每一行 (tr) 都有一个名为data-rk与您的 rowKey 和另一个名为data-ri与您的 rowIndexVar 值。

您可以获得data-rk属性通过dtWidgetVar.selection(dtWidgetVar 是数据表中 widgetVar 的名称)。

您现在可以使用remoteCommand将indexRow发送到您的模型

这是我用来测试它的代码:

The View

<p:remoteCommand name="displayIndex" process="@this" update="index" actionListener="#{viewMBean.displayRowIndex}"/>

<p:dataTable id="dt" var="data"
             value="#{viewMBean.dataModel}" 
             selection="#{viewMBean.selectedRow}"
             selectionMode="single"
             widgetVar="dtVar"
             rowIndexVar="index">
    <p:ajax event="rowSelect" 
            oncomplete="displayIndex([{name:'index', value:jQuery('tr[data-rk=' + dtVar.selection + ']').attr('data-ri')}])" process="@this" />
    <p:column headerText="#">
        #{index + 1}
    </p:column>
    <p:column headerText="Dados">
        #{data.name}
    </p:column>
</p:dataTable>
<br />
Row Index: <p:inputText id="index" value="#{viewMBean.index}" />

托管Bean

public void displayRowIndex() {
    FacesContext context = FacesContext.getCurrentInstance();
    Map map = context.getExternalContext().getRequestParameterMap();
    String pIndex = (String) map.get("index");
    index = Integer.parseInt(pIndex);
}

如果您使用复选框选择,您可以像这样检索选定的索引:

function beforeDisplayingIndexes(){
    var indexes = "";
    jQuery("tbody .ui-chkbox-box").each(function(){
      if (jQuery(this).hasClass("ui-state-active")){
        indexes = indexes + (indexes === "" ? "" : ",") + jQuery(this).closest("tr").attr("data-ri");
      }
    });
    //for debuging only
    console.log(indexes);
    displayIndex([{name:'index', value:indexes}])
}

您现在应该能够对代码进行适当的修改以利用它。

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

获取所选 primefaces 数据表行的行号 的相关文章

随机推荐

  • 带有蒙版和 RGB 图像的 Numpy/Scipy

    我正在尝试使用skikit learn 为RGB 图像创建蒙版 我想创建一个仅选择等于 0 10 0 的像素的蒙版 即绿色通道上的 10 然后只显示那些像素 这应该是直接的 类似于http scikit image org docs dev
  • 超时异常导致SqlDataReader关闭?

    我正在尝试从数据库中提取一些二进制数据并将它们写入 pdf 文件 在大多数情况下 这一切进展顺利 但偶尔的数据行似乎会抛出一个特定的错误 超时已过 操作完成之前超时时间已过 或者服务器未响应 请记住 这种情况仅发生在少数行上 并且绝不是随机
  • 如何检查用户是否已登录Google+?

    我正在编写一个需要用户登录的应用程序 我想通过 Google 实现它 并按照以下文章设置我的登录活动LoginActivity Android 版 Google 平台入门 Android 版 Google 登录 流程 用户打开我的应用程序
  • 在 NSString 中包含一个变量?

    这很好用 我们都知道 NSString textoutput Hello outLabel text textoutput 但是 如果你想在其中包含一个变量怎么办 NSString声明如下 NSString textoutput Hello
  • JPA - 从计算列设置实体类属性?

    我刚刚在 Glassfish 3 上运行的简单 Java Web 应用程序中掌握 JPA 持久性提供程序是 EclipseLink 到目前为止 我真的很喜欢它 除了 netbeans glassfish 交互中的错误 但有件事我希望能够做到
  • 将数据插入 Oracle 表的最快方法是什么?

    我正在 PL SQL 中编写数据转换 用于处理数据并将其加载到表中 根据 PL SQL Profiler 转换中最慢的部分之一是实际插入到目标表中 该表有一个索引 为了准备加载数据 我使用表的行类型填充一个变量 然后将其插入表中 如下所示
  • 设置吐司的背景颜色使其成为矩形

    如果我设置我的背景颜色Toast with t getView setBackgroundColor ctx getResources getColor R color myorange 新的 Android 4 4 圆形Toast变成了矩
  • 事件和函数之间的区别?

    我是 Node 新手 我正在努力理解事件和函数之间的主要区别 两者都需要触发 那么如果我们无论如何都必须触发事件 为什么我们还需要事件呢 它与触发函数有何不同 示例代码 var events require events var event
  • 在小键盘视图打开的情况下启动 TabTip

    我基本上有启动键盘的代码 但它以字母数字部分打开 用于编辑的框是带有数字的 NumericUpDown 因此 我想打开 tabtip exe 又名 Windows 8 1 中的屏幕键盘 并聚焦于数字键盘 这是我当前打开 tabtip 的代码
  • 使用模板类时链接器错误? [复制]

    这个问题在这里已经有答案了 I m getting an unresolved external symbol public thiscall hijo
  • 对档案中的随机访问提供良好支持的压缩格式? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 这类似于一个上一个问题 但那里的答案不能满足我的需求 我的问题略有不同 我目前对一些包含排序数据的非常大的文件使用 gzip 压缩 当文件未压缩时
  • 为什么我收到 AttributeError: 'KerasClassifier' 对象没有属性 'model'?

    这是代码 我只在最后一行收到错误y pred classifier predict X test 我收到的错误是AttributeError KerasClassifier object has no attribute model Imp
  • php中的二维多维数组到一维数组[重复]

    这个问题在这里已经有答案了 只是想知道是否有人在 php 中将 2 维数组转换为 1 维数组 我还没有在 php ini 中找到明确的解释 任何建议将不胜感激 如果您从查询中获取值 这可能对您有帮助 您可以使用 PHP 5 5 支持的数组函
  • 嵌套类模板的重载运算符<<

    我有以下设置 template lt class T gt struct Foo struct Bar Bar const T t otherT t T otherT Foo const T t myT t T myT 现在 我想举例说明F
  • 使用 ADAL.js 获取的令牌对 Azure 移动服务应用程序进行身份验证

    我正在尝试针对 Azure 移动服务应用程序对 HTML 应用程序进行身份验证 设置 两个应用程序都使用 AAD 作为身份验证后端 因此两个应用程序都有一个在 Active Directory 中注册的应用程序 Azure 移动服务应用程序
  • 使用 SBT 复制文件

    我正在使用 SBT 构建 java 项目 并且需要复制文本文件 不是资源 而是由 java 类用来读取 我对 SBT 或 Scala 都没有经验 build scala 文件需要 任何帮助将非常感激 例如 如果我的目录结构是 test fi
  • 如何检查消息(postMessage)来自哪个跨域 iframe?

    我知道MessageEvent has source属性是发送消息的窗口对象 现在如何让这些信息检查主文档中的哪个 iframe 当然还有消息到达时的主文档中 是该特定消息的来源 是唯一可用的选项来检查location href on th
  • android 是否重用从资源加载的图像?

    因此 我在一个 Activity 中有多个 ImageView 并且它们都使用资源中的相同图像位图 ImageViewOne setImageResource R drawable frequently used image ImageVi
  • std::tuple 的重载运算符 << - 可能的简化?

    I used SO问题 迭代元组 的答案编写一个方法来重载 lt lt 此方法经过测试 似乎可以正确使用g 4 7在 Debian 挤压上 然而这种方法有点迂回 因为它看起来 lt lt 无法显式实例化 我找到了一篇关于它的帖子here 因
  • 获取所选 primefaces 数据表行的行号

    我有一个 primefaces 数据表 需要在 JSF 页面中显示 总行数 的 所选行号 我可以使用 rowIndexVar 属性在其中一列中显示行号 但我不知道要显示在行选择的输入文本中分别使用相同的数字 我应该在 JSF 页面或托管 b