使用JavaScript和Primefaces未正确设置值
我正在向inputtext发送一个带有JS的变量。然后,当设置完值后,我单击p:commandButton调用使用该值的方法,但传递的值为空。。。虽然js将值发送到输入,我看到了。。。它认为它是空白的。如果我自己输入值,它会在方法中读取它。。。否则它不会。。。有什么想法吗? 这是我能得到的代码(有点长): XHTML:使用JavaScript和Primefaces未正确设置值,javascript,html,jsf,primefaces,Javascript,Html,Jsf,Primefaces,我正在向inputtext发送一个带有JS的变量。然后,当设置完值后,我单击p:commandButton调用使用该值的方法,但传递的值为空。。。虽然js将值发送到输入,我看到了。。。它认为它是空白的。如果我自己输入值,它会在方法中读取它。。。否则它不会。。。有什么想法吗? 这是我能得到的代码(有点长): XHTML: <!-- Modal --> <div class="modal fade" id="myModalId" tabindex="-1"
<!-- Modal -->
<div class="modal fade" id="myModalId" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header bg-warning">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button>
<h4 class="modal-title" id="myModalLabel"><b>#{msg.html32}</b></h4>
</div>
<div class="modal-body">
<center style="font-size: 14px">#{msg.html31}</center>
</div>
<div class="modal-footer">
<p:commandLink action="#{bd.setId(dotcalpro.id)}" styleClass="btn btn-md btn-info" value="#{msg.htmlborrar}" immediate="true" update="tbResult, growl" accesskey="r" onclick="modalIdhide()"/>
<p:spacer height="5"/>
<p:commandLink styleClass="btn btn-md btn-info" value="#{msg.html48}" immediate="true" update="tbResult, growl" onclick="modalIdhide()"/>
</div>
</div>
</div>
</div>
<p:column width="60">
<f:facet name="header">#{msg.dotcalprotbver}</f:facet>
<center>
<button type="button" class="btn btn-warning btn-xs"
onclick="detalle('#{tb.zid}'); modalIdshow();" >
<i class="fa fa-search fa-2x"></i>
</button>
</center>
</p:column>
豆子:
我再说一遍,以防万一我已经尽可能多地恢复了代码。我用sesion变量找到了某种解决方案。。。它起作用了,但不太确定它是否正确 刚刚在我的Bean类中添加了以下内容:
/**
* Setea tipo de valor de la meta para busqueda
* @param next
*/
public void setId(String id){
HttpServletRequest rq = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
String idval = rq.getParameter("formdotcalpro:id");
FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("id", idval);
//System.out.println("valor : " + idval);
}
如果你有时间,我仍然欢迎你对这个问题提出另一种观点
/**
* Setea tipo de valor de la meta para busqueda
* @param next
*/
public void setId(String id){
FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("id", id);
System.out.println("valor : " + id);
}
/**
* Setea tipo de valor de la meta para busqueda
* @param next
*/
public void setId(String id){
HttpServletRequest rq = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
String idval = rq.getParameter("formdotcalpro:id");
FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("id", idval);
//System.out.println("valor : " + idval);
}