0
從來就p的動態列表:selectOneRadio,即是這樣的:我該如何向我的managedbean發送p:selectOneRadio數據列表?
1 op1 op2 op3
2 op1 op2 op3
3 op1 op2 op3
所以,當我讓我的提交我想知道被選定爲第1行的選項,並選擇了行的選項2和第3行選擇了哪個選項。 我的問題是我只能得到最後選擇的選項。 這裏是我的XHTML:
<ui:repeat var="o" value="#{perfilesMB.numbers}" varStatus="status">
<p:selectOneRadio value="#{perfilesMB.number}">
<p:ajax listener="#{perfilesMB.handleCityChange}" />
<f:selectItem itemLabel="Option 1" itemValue="1" />
<f:selectItem itemLabel="Option 2" itemValue="2" />
<f:selectItem itemLabel="Option 3" itemValue="3" />
</p:selectOneRadio>
</ui:repeat>
這裏是我管理的Bean:
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.Arrays;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ManagedProperty;
import javax.faces.bean.SessionScoped;
import org.springframework.dao.DataAccessException;
import javax.faces.context.FacesContext;
import javax.faces.application.FacesMessage;
import org.primefaces.event.RowEditEvent;
@ManagedBean(name="perfilesMB")
//@RequestScoped
@SessionScoped
public class PerfilesManagedBean implements Serializable{
private List<String> numbers;
private String number;
public List<String> getNumbers() {
return numbers;
}
public void setNumbers(List<String> numbers) {
this.numbers = numbers;
}
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
//private String nivel;
//private int id_seccion;
public PerfilesManagedBean() {
niveles = new ArrayList<String>();
numbers = new ArrayList<String>();
for (int i = 0; i < 3; i++) {
numbers.add("" + i);
}
}
public String sendData(){
System.out.println("Number: " + number);
return "";
}
}
如何解決呢? 在此先感謝
由於它的工作結合的陣列或列表,數字中的對應元件,像完美 – linker85
爲什麼不'值=」 #{perfilesMB.numbers [status.index]}「'? – BalusC
@BalusC因爲從OP的問題來看,特別是來自bean的構造函數,這個列表應該被用於選項,也就是說,可能的''代替了硬編碼。 –
skuntsel