Primefaces p:remoteCommand parameter always null [

2019-10-23 08:06发布

这个问题已经在这里有一个答案:

  • 从JavaScript remoteCommand:通过参数p 7个回答

我想传递一个参数与

电话号码:remoteCommand

不幸的是,当我在bean方法检索paramer我总是空。

这有什么错我的代码?

这里是我的网页代码:

<a href="#" onclick="rc([{'d':'01'}])">01</a>

<p:remoteCommand name="rc" update=":myform:messages" actionListener="#{mybean.changedaybar}" />

这是bean的方法:

public void changedaybar() {
            Map<String, String> params = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap();
            String param = params.get("d");

            FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Executed"+param, "Using RemoteCommand."));
    }

Answer 1:

这PrimeFaces版本您使用的? 因为这样从一个JavaScript函数传递参数到这一点很重要p:remoteCommand在PrimeFaces 3.3已经改变。

您将看到以下职位的正确语法: https://stackoverflow.com/a/18510102/2118909在这里,但为了方便您的摘要。

从PrimeFaces 3.3

传递参数

远程命令可以发送通过以下方式动态参数;

increment([{name:'x', value:10}, {name:'y', value:20}]);

<a href="#" onclick="rc([{name: 'd', value:'01'}])">01</a>

之前PrimeFaces 3.3

传递参数

远程命令可以发送通过以下方式动态参数;

increment({param1:'val1', param2:'val2'});

<a href="#" onclick="rc({d:'01'})">01</a>


文章来源: Primefaces p:remoteCommand parameter always null [duplicate]