【问题标题】:Column Click in Rich Faces 4Rich Faces 中的列单击 4
【发布时间】:2011-10-01 06:04:22
【问题描述】:

我正在使用 Richfaces 4 中的扩展数据表。我想在用户单击元素时连续显示元素的详细信息页面。因此,我添加了类似

onrowclick="showDetails(#{item.id})"

到桌子上。这会触发相应的<a4j:jsFunction/> 标签。到目前为止,这是有效的。

但是,其中一列中有一个 commandLink(用于切换到详细信息的编辑视图)。该链接适用于基于 webkit 的浏览器 (Chrome/Safari)。但 IE 和 firefox 只对行执行 onclick。 commandlink 在那里不起作用。

是否有可能只设置一个 oncolumnclick 或不包含命令链接的列?我还没有找到将 onclick-handler 添加到特定列的方法(我正在使用 rich:column 作为列。)

或者是否有更好/更干净/更好的方法来实现“单击行中的某处以显示详细信息,单击最后一列中的链接以显示编辑视图”-我追求的行为?

【问题讨论】:

    标签: jsf richfaces richdatatable


    【解决方案1】:

    试着把它放在你的命令按钮中

    onclick="Event.stop(event||window.event)"
    

    【讨论】:

    • 不工作。 Button 显示点击动画,但 tr 的 onclick 获胜。
    【解决方案2】:

    我目前的解决方法是不使用onrowclick,而是在我的所有列中添加styleClass="clickable",除了带有链接的列。在第一列中,我添加了以下内容:

    <h:outputText value="#{item.id}" style="display: none;" styleClass="id"/>
    

    然后在表格之后我使用以下 jQuery:

    <rich:jQuery selector=".myTable td.clickable" query="live('click', function(event) {
                    showDetails($(this).parent().children().children('.id').text());
                  });"/>
    

    我真的不喜欢这个解决方案,但到目前为止它运行良好。

    不过,我仍然愿意寻求更好的解决方案 :)

    【讨论】:

      猜你喜欢
      • 2013-04-11
      • 1970-01-01
      • 2011-08-25
      • 1970-01-01
      • 2011-12-18
      • 2011-11-21
      • 2011-01-01
      • 2013-05-19
      • 1970-01-01
      相关资源
      最近更新 更多