开发者

JSF Add Input to the Form

I need to provide 开发者_如何转开发the user with a button (CommandButton) on the form which by clicking it can add TextInputs to the form. But it is not needed to be DHTML or AJAX


I was writing this code..hoping to solve your problem,

JSF page:

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
  xmlns:h="http://java.sun.com/jsf/html">
<h:head>
    <title>Dynamic Input</title>
</h:head>
<h:body>
    <h:form>
 <h:dataTable id="textlist"  var="tbox" value="#{Bean.inputList}">
  <h:column>
      <h:inputText value="#{tbox}"/>
  </h:column>
</h:dataTable>
        <h:commandButton action="#{Bean.addInput}" value="Add Textbox"/>
    </h:form>
</h:body>
</html>

Bean:

import java.util.ArrayList;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;


@ManagedBean(name="Bean")
@ViewScoped
public class Bean implements java.io.Serializable {
private ArrayList inputList;
/** Creates a new instance of Bean */
public Bean() {
   inputList=new ArrayList();
    inputList.add(inputList.size());
}

public void addInput(){
     inputList.add(inputList.size());
}

public ArrayList getInputList() {
    return inputList;
}

public void setInputList(ArrayList inputList) {
    this.inputList = inputList;
}

}

This works...as a start. You can see if you can modify the code to suite your purposes. :)

I dont know if any other approach exist to add dynamic controls in JSF 2.0

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜