Tuesday, February 18, 2014

Tree Structure of vfpage





=================VFPage=============================================
<apex:page showHeader="false" controller="nnrtreeclass">
 <script language="javascript">
   window.onload = new function()
   {
      // bring popup window to front
      window.focus();
      var ele=document.getElementById('{!$Component.form.block.section.query}');
      if (ele)
      {
         ele.focus();
      }
   }
 
   function fillIn(name, id)
   {
      var winMain=window.opener;
      if (null==winMain)
      {
         winMain=window.parent.opener;
      }
      var ele=winMain.document.getElementById('{!$CurrentPage.parameters.namefield}');
      ele.value=name;
      ele=winMain.document.getElementById('{!$CurrentPage.parameters.idfield}');
      ele.value=id;
      winMain.closeLookupPopup();
      savemethod();
      alert('ahi');
   }
   </script>



    <script type="text/javascript" language="javascript">
 
function hide_menu(node_id,menu_type){

var node_prefix="";

switch(menu_type){

case 1:{

node_prefix="node_";

}break;

case 2:{

node_prefix="main_node_";

}break;

}



var node=document.getElementById(node_prefix+node_id);

var node_status=document.getElementById(node_prefix+node_id+"_status");

var node_text=document.getElementById(node_prefix+node_id+"_title");
if(node_status.value=="1"){

node.style.display = "none";

}else{

node.style.display = "";

}

if(node_status.value=="1"){

node_status.value="0";

node_text.innerHTML="&#9658";

}else{

node_status.value="1";

node_text.innerHTML="&#9660";

}

return false;

}


</script>

<style type="text/css">

.node_content{

padding-left:30px;

}

.node_title{

vertical-align:top;

}

.link_text{

font-family:Verdana, Arial, Helvetica, sans-serif;

font-size:10px;

text-decoration:none;

}

.link_text:hover{

text-shadow:#FFCC00;

font-weight:bold;

}

.node_title{

font-family:Verdana, Arial, Helvetica, sans-serif;

font-size:11px;

font-weight:bold;

text-decoration:none;

}

</style>

<html>

<head><title>How to create tree view in JavaScript </title>

</head><body>
<apex:form >
<apex:pageBlock >
<apex:actionFunction name="savemethod" action="{!displayRecord}"/>
<!-- Main Menu-->

<div id="myMenu">

<!-- First Menu Item -->
 
    <div id="node_title_1">  
        <a href="javascript:void(0);" onclick="javascript:hide_menu('1',1);" class="link_text">
        <!--    <span class="node_title" id="node_1_title">&#9660;</span> -->
            <apex:outputText styleClass="node_title" id="node_1_title"> &#9660; </apex:outputText>
        </a>
           

           <apex:outputText styleClass="node_title"> Clinical Bio-Chemistry </apex:outputText>
                   <!--  <apex:commandLink styleClass="node_title" value="Clinical Bio-Chemistry"/>  -->
       
             
       
                    <div id="node_1">
                        <div id="node_11" class="node_content">
                       
                            <a href="javascript:void(0);" onclick="javascript:hide_menu('111',1);" class="link_text">
                            <span class="node_title" id="node_111_title">&#9660;</span></a>
       

          <apex:outputText styleClass="link_text"> Acid Based Homeo Stasis </apex:outputText>
       
                                <div id="node_111" class="node_content">
                               
                                        <apex:pageBlockSection >
         <apex:dataTable value="{!records}" var="r">
            <apex:column >
             <apex:outputLink onclick="fillIn('{!r.name}', '{!r.id}')"> {!r.name}
              <apex:param name="id"  value="{!r.id}"    assignTo="{!r.id}"/>
             </apex:outputLink>
            </apex:column>
         </apex:dataTable>
       
       </apex:pageBlockSection>
                                           
                                            <input type="hidden" id="node_111_status" name="node_111_status" value="1" />
                                           
                                               
                                </div>
       
                        </div>

                       
                    <div id="node_14" class="node_content">
                   
                            <a href="javascript:void(0);" onclick="javascript:hide_menu('140',1);" class="link_text">
                    <span class="node_title" id="node_140_title">&#9660;</span></a>
       
                    <a href="javascript:void(0);" class="link_text">Metabolic Panel/Plasma Osmolality</a>
                        <div id="node_140">
                          <div id="node_141" class="node_content"> <!-- &bull;&nbsp;-->
                            <apex:dataTable value="{!Record}" var="r">
                                 <apex:column >
             <apex:outputLink onclick="fillIn('{!r.name}', '{!r.id}')" >{!r.name}</apex:outputLink>
            </apex:column>
                            </apex:dataTable>
                          </div>
                         
                              <input type="hidden" id="node_140_status" name="node_140_status" value="1" /> </div>
                    </div>

                    <div id="node_1_link_5" class="node_content">

                        <a href="javascript:void(0);" onclick="javascript:hide_menu('150',1);" class="link_text">
                    <span class="node_title" id="node_150_title">&#9660;</span></a>

                        <a href="javascript:void(0);" class="link_text">Erdiconology </a>
                    <div id="node_150">
                     <div id="node_141" class="node_content">
                        <apex:dataTable value="{!recordss}" var="r">
                            <apex:column >
                                 <apex:outputLink onclick="fillIn('{!r.name}', '{!r.id}')">{!r.name}</apex:outputLink>
                            </apex:column>
                        </apex:dataTable>
                        </div>
                       <input type="hidden" id="node_150_status" name="node_150_status" value="1" /> </div>  
                    </div>

                   
                   

                    </div>   <input type="hidden" id="node_1_status" name="node_1_status" value="1" />

            </div>

 
 
 
 
 
  <!-- Second Menu Item  -->
  <!--

    <div id="node_title_2">
   
                <a href="javascript:void(0);" onclick="javascript:hide_menu('2',1);" class="link_text">
                <span class="node_title" id="node_2_title">&#9660;</span></a>
               
                    <span class="node_title">Haemotology  </span>

                <div id="node_2">

                <div id="node_2_link_1" class="node_content">
       
                <a href="javascript:void(0);" onclick="javascript:hide_menu('160',1);" class="link_text">
                <span class="node_title" id="node_160_title">&#9660;</span></a>
       
                <a href="javascript:void(0);" class="link_text">Blood Bank </a>
        <div id="node_160">
                    <div id="node_2_link_11" class="node_content"> <apex:inputCheckbox /> <apex:outputLink value="#" onclick="fillIn('{!r.name}', '{!r.id}')">RCB</apex:outputlink></div>
                        <div id="node_2_link_12" class="node_content"> <apex:inputCheckbox /> <apex:outputLink value="#" onclick="fillIn('{!r.name}', '{!r.id}')">WCB </apex:outputlink></div>
             
             
           <input type="hidden" id="node_160_status" name="node_160_status" value="1" /> </div>  
                </div>

           
            <div id="node_2_link_2" class="node_content"> <apex:inputCheckbox /> <apex:outputLink value="#" onclick="fillIn('{!r.name}', '{!r.id}')">Coagulation </apex:outputlink></div>
   
            </div> <input type="hidden" id="node_2_status" name="node_2_status" value="1" />

        </div>


-->


  <!-- Third Menu Item -->



    <div id="node_title_3"><a href="javascript:void(0);" onclick="javascript:hide_menu('3',1);" class="link_text">
           
        <span class="node_title" id="node_3_title">&#9660;</span></a><span class="node_title">Pathology </span>

                <div id="node_3">
                   <div id="node_141" class="node_content">
                    <apex:dataTable value="{!Recorded}" var="r">
                       <apex:column >
                         <apex:outputLink onclick="fillIn('{!r.name}', '{!r.id}')">{!r.name}</apex:outputLink>
                       </apex:column>
                    </apex:dataTable>
                   
             </div>
                </div>   <input type="hidden" id="node_3_status" name="node_3_status" value="1" />

        </div>


</div>
</apex:pageBlock>
</apex:form>
</body>

</html>
  <apex:pageBlock rendered="{!display}" title="Record Display">
  </apex:pageBlock>

</apex:page>

=======================Controller===========================
public class nnrtreeclass {

    public PageReference displayRecord() {
        display=true;
       String firstName = Apexpages.currentPage().getParameters().get('id');
       system.debug('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'+firstName );
        return null;
    }

  public boolean display{set;get;}
  public LIST<Test__c> getRecoeds(){
  return listrecords;
  }
   public list<Test__c>  getrecords() {
        listrecords=[select id, Name,Test_Code__c,Cost__c,IsDiscount__c,Discount__c,Total_Price__c from test__c where name LIKE 'Blood %' order by name desc];
        return listrecords;
    }

    string soql {set;get;}
    public list<Test__c> listrecords{set;get;}
    public nnrtreeclass(){
       listrecords=[select id, Name,Test_Code__c,Cost__c,IsDiscount__c,Discount__c,Total_Price__c from test__c order by name limit 1];
         
    }
    public list<Test__c>  getrecord() {
        listrecords=[select id, Name,Test_Code__c,Cost__c,IsDiscount__c,Discount__c,Total_Price__c from test__c where name LIKE 'Cardiac %' order by name desc];
        return listrecords;
    }
    public list<Test__c>  getrecordss() {
        listrecords=[select id, Name,Test_Code__c,Cost__c,IsDiscount__c,Discount__c,Total_Price__c from test__c where name LIKE 'Liver %' order by name desc];
        return listrecords;
    }
    public list<Test__c>  getrecorded() {
        listrecords=[select id, Name,Test_Code__c,Cost__c,IsDiscount__c,Discount__c,Total_Price__c from test__c where name LIKE 'Protiend %' order by name desc];
        return listrecords;
    }
}

No comments:

Post a Comment