【问题标题】:No reaction for the button按键无反应
【发布时间】:2013-07-01 10:32:34
【问题描述】:

我有一张桌子:

<h:form id="form">
                <p:dataTable id="table" styleClass="table" value="#{userMB.allAdmins}" var="admin" paginator="true" rows="15" rowKey="#{admin.id}" selection="#{userMB.user}" selectionMode="single"  >

在表中我有一个 ajax:

<p:ajax event="rowSelect" listener="#{tableBean.onRowSelect()}" update=":form:table" />

我的tableBean:

@ManagedBean
@RequestScoped
public class TableBean {

    boolean flag = true;

    /**
     * Creates a new instance of TableBean
     */
    public TableBean() {
    }

    public boolean getFlag() {
        return flag;
    }

    public void setFlag(boolean flag) {
        this.flag = flag;
    }

    public void onRowSelect() {
        flag = false;
    }
}

当我选择第 i 行时,我的编辑按钮启用,否则禁用。我的按钮:

<p:commandButton action="#{userMB.editStart()}" value="#{msg.edit}" disabled="#{tableBean.flag}" ajax="false" icon="ui-icon-pencil"/>

方法editStart:

   public String editStart() {
        return "editStart";
    }

仅用于导航:

 <navigation-case>
            <from-outcome>editStart</from-outcome>
            <to-view-id>/protected/admin/adminEdit.xhtml</to-view-id>
        </navigation-case>

我的问题是,当我单击编辑按钮时,我没有转到页面 adminEdit,只有我的实际页面 adminList 刷新...为什么?

【问题讨论】:

  • 你试过这样的`'?
  • 直接action="editStart"是否有效?如果没有,可能 JSF 没有解析你的配置文件。
  • 我修好了。我将我的 tableBean 从 requestScoped 转换为 viewScoped

标签: java ajax jsf primefaces


【解决方案1】:

你见过this吗?

它列出了造成这种影响的常见原因。我认为数字 4 可能是你的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-21
    • 1970-01-01
    • 2016-12-03
    • 1970-01-01
    • 1970-01-01
    • 2021-06-14
    相关资源
    最近更新 更多