Hi Simon:
           I use javascript to control the component render,,
----------------
----------------
<t:column>
                                <f:facet name="header">
                                        <h:outputText
                                                
value="#{ChangeOperationGeneralListFormBean.newValueLabel}"
                                                styleClass="SCS_Value_c" />
                                </f:facet>
                                
                                <t:div id="column1" forceId="true" />
                                
                                <t:inputHidden value="#{rowvar.active}" 
id="new" forceId="true" />
                                <t:inputHidden value="#{rowvar.type}" id="type" 
forceId="true" />
                                <t:inputHidden value="#{rowvar.unit}" id="unit" 
forceId="true" />
                        

                        </t:column>
----------------

the javascript is:

function init() {
  //alert("helo");
  var x=0;
  var typeId;
  var unitId;
  var newValueId;
  var columnId;
  var CONCOLUMN;
  do{
    CONCOLUMN="column1["+x+"]";
    columnId=document.getElementById(CONCOLUMN);
    typeId=document.getElementById("type["+x+"]");
    unitId=document.getElementById("unit["+x+"]");
    newValueId=document.getElementById("new["+x+"]");
    if(typeId==null)
    {
     break;
    }
    if(typeId.getAttribute("value")=="text")
    {
     
    //columnId.outerHTML="<input type='text' id="+columnId+"
value="+newValueId.getAttribute("value")+" //disabled='disabled'>";
   //  columnId.outerHTML="<input type='text' name="+CONCOLUMN+"
id="+CONCOLUMN+" //value="+newValueId.getAttribute("value")+"
disabled='disabled'>"+unitId.getAttribute("value");
     columnId.innerHTML="<input type='text'  id="+CONCOLUMN+"
value="+newValueId.getAttribute("value")+">";
    }else if(typeId.getAttribute("value")=="radio")
    {
      var str=unitId.getAttribute("value").split("|");  
      columnId.innerHTML="<input type='radio' name="+CONCOLUMN+"
id="+CONCOLUMN+" value="+str[0]+">"+str[0]+"<br>"+
      "<input type='radio' name="+CONCOLUMN+" id="+CONCOLUMN+"
value="+str[1]+" checked='checked' >"+str[1];
    }else if(typeId.getAttribute("value")=="checkBox")
    {
       columnId.innerHTML="<input type='Checkbox' name="+CONCOLUMN+"
id="+CONCOLUMN+" value="+newValueId.getAttribute("value")+"
>"+unitId.getAttribute("value");
    }
      
    x++;
  }while(1);
}

My ideality is use purely jsf to implements..
The second column(ie."new" column) may have four different
component(Textbox,Radio,button,Checkbox)
Thanks everybody reply,
I think you can give me further advice..thanks thanks thanks
-- 
View this message in context: 
http://www.nabble.com/How-to-dynamically-show-different-components-for-each-row-in-a-table-tf2548765.html#a7125615
Sent from the MyFaces - Users mailing list archive at Nabble.com.

Reply via email to