How to pass display property using a variable....

  • Thread starter Thread starter Benjamin Smith
  • Start date Start date
B

Benjamin Smith

I am controlling the display status of a table row using the following code.

<TR id="CCRow" style="DISPLAY:none">

Instead of hard coding "none" above, I would like to change that value using
a hidden input control. How to do that?

I am getting the error in the following case.

<TR id="CCRow" style="DISPLAY:"
'document.frmMyPage.hdnRowDisplayStatus.value'>

or

<TR id="CCRow" style="DISPLAY:"
=document.frmMyPage.hdnRowDisplayStatus.value>

I am not getting the syntax here what to type.
I am using IE 5.0+
Please advice.

Benjamin
 
Benjamin,

An HTML line doesn't get compiled. It is static. You should use javascript
something like

CCRow.style.display=document.frmMyPage.hdnRowDisplayStatus.value;

Eliyahu
 
Still I am getting error when the page is loaded.
Not sure how to overcome this.
Thanks for your reply.
Benjamin
 
What error?

Try document.getElementById("CCRow")

BTW, I meant an HTML line doesn't get compiled on client side. On server it
does.

Eliyahu
 
aspx page is. And html, as part of a page, can have server code in it. As
you yourself suggested in your post to this thread.

Eliyahu
 
aspx page is. And html, as part of a page, can have server code in it. As
you yourself suggested in your post to this thread.

The server side code is compiled, but I wasn't aware than HTML is compiled.

-Darrel
 
Darrel,

We are talking about the same thing. The server-side code sitting within
html tags is compiled.

Eliyahu
 
OK. Here is the code.
Copy and paste this code in the HTML section of the page

1. Why I am using hidden varaible here?
Currently user can click on hide/show link. If the application is in display
mode (I mean the hidden data is displayed) and if the user clicks the
button, the post back happens and the user selected display mode will be
gone. To avoid that I am trying to keep the user opted mode using hidden
control and trying to restore the same value after postback. How to do that?

2. Currently this part of my code appears almost at the end of the page
where user has clicked vertical scroll bar to get into this section. After
scrolling down if the clicks the hide/show link the data will be
displayed/hidden but the user will be shown the top of the page. Some thing
like my smart navaigation is not effective. I know I am not posting the page
back when the user clicks on the hide/show link. But how to restore the
vertical postion of the form when the user clicks on hid/show button.

Your comments and suggestions are highly appreciated.

Benjamin


<%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebForm1.aspx.vb"
Inherits="HomeTestApp.WebForm1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>WebForm1</title>
<meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema"
content="http://schemas.microsoft.com/intellisense/ie5">
<script language="javascript">
<!--
function hideshow(obj)
{
if (document.getElementById(obj).style.display == "block")
document.getElementById(obj).style.display = "none";
else
document.getElementById(obj).style.display = "block";
}
//-->
</script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<TABLE width="100%" id="Table1" cellSpacing="1" cellPadding="1"
border="1">
<tr>
<td><a href="#" onclick="hideshow('row5')">Hide Show</a><INPUT
type="hidden" id="hdnRowSts" value="none" name="hdnRowSts"></td>
</tr>
<tr id="row5" style="DISPLAY:none">
<TD>
<asp:Label id="Label1" runat="server">Label1</asp:Label></TD>
</tr>
<tr>
<td>
<asp:Label id="Label2" runat="server">Label2</asp:Label>
<asp:Button id="btnDoPostBack" runat="server"
Text="btnDoPostBack"></asp:Button></td>
</tr>
</TABLE>
</form>
</body>
</HTML>
 
1. Why I am using hidden varaible here?
Currently user can click on hide/show link. If the application is in display
mode (I mean the hidden data is displayed) and if the user clicks the
button, the post back happens and the user selected display mode will be
gone. To avoid that I am trying to keep the user opted mode using hidden
control and trying to restore the same value after postback. How to do
that?

Is 'display mode' a universal setting, or just for this one page for this
one instance? If the former, you probably want to handle that via cookies.
And on each page load, read the cookie to determine the 'display mode'.

If it's the latter, it'd probably make most sense just to do this all with
javascript and forget the postback all together.

-Darrel
 
It is for one page as of now.
I can use the cookies to store the user selected mode but how I will restore
that status after postback? I am getting the syntax error in my code. Did my
code after copy & paste worked? Were you able to regenerate the error that I
am getting?
Thanks for anwswering my post,Benjamin
 
Back
Top