Reputation: 57
<asp:Panel ID="FilterPanel" runat="server" CssClass="FilterBorder"
Visible="false">
<table width="100%" cellspacing="4">
<tr>
<td class="FilterPanelFilterControlWidth">
<Uc:Filter ID="Filter" runat="server" />
</td>
<td class="CenterInCell">
<Controls:BrButton ID="GoButton" runat="server" Text="Go"
CausesValidation="true" SkinID="VerySmallButton"
OnClick="GoButton_Click" />
</td>
</tr>
</table>
</asp:Panel>
i am setting the visibilty of my filter panel as false.. by default..
on the click of show/hide filter i want to change it to visible = true
.
this i am doing by javascript..like this
function showHideFilter() {
if (document.getElementById('ctl00_ContentPlaceHolder1_ctl00_FilterShowHideHiddenField').value == 'true') {
document.getElementById('ctl00_ContentPlaceHolder1_ctl00_FilterPanel').style.display = 'none';
document.getElementById('ctl00_ContentPlaceHolder1_ctl00_FilterPanel').style.visibility = 'hidden';
document.getElementById('ctl00_ContentPlaceHolder1_ctl00_FilterShowHideHiddenField').value = 'false';
return false;
}
else {
document.getElementById('ctl00_ContentPlaceHolder1_ctl00_FilterPanel').style.display = 'inline';
document.getElementById('ctl00_ContentPlaceHolder1_ctl00_FilterPanel').style.visibility = 'visible';
document.getElementById('ctl00_ContentPlaceHolder1_ctl00_FilterShowHideHiddenField').value = 'true';
return false;
}
}
however becaus ethe visible is set to false.. i get runtime error like this required object is set to null..below..
document.getElementById('ctl00_ContentPlaceHolder1_ctl00_FilterPanel').style.display = 'inline';
document.getElementById('ctl00_ContentPlaceHolder1_ctl00_FilterPanel').style.visibility = 'visible';
where am i going wrong..!!
Upvotes: 0
Views: 1547
Reputation: 5980
When visible="false"
and runat="server"
, then that object is not sent from server to client. So you cannot make it visible by javascript, you need to do it on server.
Upvotes: 1