You don't use the session to store the data. I personally only use the session to store certain things that are global to the website, and can only be 1 value.
So either the session value exist, or there is no session to store the value.
According to your description, the session value contains the correct value.
You vague description suggest that its one page using tabs, so the page doesn't change.
Since you didn't give any details on how you built the form, I will just use the concept.
So you make 3 containers that are div elements or panels, each container has a unique id, the value your storing in the session; and when you change institutes you just switch panels to the one you want to display.
TAB1 TAB2 TAB3
<div>
<div>Institute 1<div>
<div>Institute 2<div>
<div>Institute 3<div>
</div>
</div></div></div></div></div></div>
So if your using asp.net object, it's panels or the HTMLGenericControl because you can manipulate the innerHTML.
Dim panel1 as htmlgenericcontrol = new htmlgenericcontrol("div")
panel1.id = value
panel1.innerHTML = "<span>description</span>"
panel1.visible = false
controls.add(panel1)
Dim panel2 as htmlgenericcontrol = new htmlgenericcontrol("div")
panel2.visible = false
panel2.innerHTML = "<span>description</span>"
controls.add(panel2)
<asp:panel id="panel1" runat="server" visible="true" xmlns:asp="#unknown"> </asp:panel>
<asp:panel id="panel2" runat="server" visible="false" xmlns:asp="#unknown"> </asp:panel>
Private Protected Sub tab_1_Click
panel1.visible = true
panel2.visible = false
end sub
Private Protected Sub tab_2_Click
panel1.visible = false
panel2.visible = true
end sub