我正在使用以下代码:
<p:inputText label="Bezeichnung"
required="#{param['form_inhalt:artikeldatatable[0]:entfernen']==null}"
value="#{artikeldata.bezeichung}"></p:inputText>
我需要访问此'artikeldatatable'中的所有ID。我怎么能这样做? 如果激活表中的任何按钮,它应该返回false。这可以通过一个按钮[0]正常工作,但我需要检查ID-Array中的所有按钮。
#param['form_inhalt:artikeldatatable:0:entfernen']==nullANDparam['form_inhalt:artikeldatatable:1:entfernen']==null}
有没有办法检查整个阵列?
基本上我正在寻找像*这样的通配符 来自
的所有IDPARAM [ 'form_inhalt:artikeldatatable:0:entfernen']
要 PARAM [ 'form_inhalt:artikeldatatable:99999:entfernen']
或者我是否必须编写一个java脚本函数,该函数迭代到数组并返回true?
如果是这样,我如何通过Javascript访问#{param ... stuff?
非常感谢!
答案 0 :(得分:0)
private boolean checkButtonBeschaffung() {
boolean globalValue = false;
FacesContext facesContext = FacesContext.getCurrentInstance();
Map<String, String> parameterMap = (Map<String, String>) facesContext.getExternalContext().getRequestParameterMap();
for (int i = 0; i < 50; i++) {
StringBuilder sb = new StringBuilder("form_inhalt:artikeldatatable:");
sb.append(i);
sb.append(":entfernen");
String param = parameterMap.get(sb.toString());
// Wenn irgendeiner der entfernen Buttons gedrueckt wurde, dann return = false
if (param == null) {
globalValue = true;
} else {
globalValue = false;
break;
}
}
return globalValue;
}
运行RequestParameterMap,如果按下它们,我会检查所有按钮(确定到50)。