Solved

mm_menu.js with aspx - unable to retrieve element object , returning undefined

Posted on 2007-12-05
4
727 Views
Last Modified: 2013-11-19
Hi guys,

I'm trying the dynamic menu on .aspx, but its not working as it did in .asp.
I have no problem creating span layer and add submenu on it in asp.
script.js file
function FIND(item) {
      if( window.mmIsOpera ) return(document.getElementById(item));
      if (document.all)  return(document.all[item]); <-- return undefined when i use it on aspx
      if (document.getElementById) return(document.getElementById(item));
      
       return(false);
}
function writeMenus(container)
{
  ...
document.writeln('<span id="menuContainer"  ></span>'); <-- this seems not working in aspx
container = FIND("menuContainer");
alert('hey'+container);  <-- undefined..
...
}

aspx file (c#)
<script src="../includes/scripts.js" type="text/javascript"></script>
<%
String section = "Main Menu";                        
String subsection       = "stest";                        
String detail             = "img.jpg";            
%>
<script type="text/javascript">
<!--
section       = "<%=section%>";
subsection       = "<%=subsection%>";
detail             = "<%=detail%>";
// -->
</script>
<script type="text/javascript">mmLoadMenus();</script>
</HEAD>
<body onload="javascript:setnav('<%=section%>', '<%=subsection%>', '<%=detail%>');">

the js file i used is from :Andy Finnell, March 2002, mm_menu 20MAR2002 Version 6.0

Thanks for the help
0
Comment
Question by:crabbear
  • 3
4 Comments
 
LVL 17

Accepted Solution

by:
gops1 earned 125 total points
ID: 20416914
Strange but works when I add some content:

document.writeln('<span id="menuContainer">&nbsp;</span>');
0
 

Author Comment

by:crabbear
ID: 20416986
ya thats why im puzzled. urs work in aspx? prehaps u post ur aspx code for me to reference?
In my main aspx file, i include
<script src="../includes/scripts.js" type="text/javascript"></script>
            <%
                  String section       = "EmployeeBasics";                        
                  String subsection       = "NewEmployees";                        
                  String detail             = "img-passportVISA.jpg";            
            %>
            <script type="text/javascript">
            <!--
                  section       = "<%=section%>";
                  subsection       = "<%=subsection%>";
                  detail             = "<%=detail%>";
                  document.writeln('<span id="menuContainer"  ></span>');
                  var span = document.getElementById("menuContainer");
                  alert(span);
            // -->
            </script>
            <script type="text/javascript">mmLoadMenus();</script>
      </HEAD>
      <body
onload="javascript:setnav('<%=section%>', '<%=subsection%>', '<%=detail%>');"MS_POSITIONING="GridLayout">

and this in my body tag
<!-- #include virtual="/aphr/includes/topnav.aspx" -->

my topnav.aspx display all the menus
0
 

Author Comment

by:crabbear
ID: 20416990
i tried adding:
document.writeln('<span id="menuContainer"  ></span>');
var span = document.getElementById("menuContainer");
alert(span);
as u can see from above.
But it returns null. im stuck

0
 

Author Comment

by:crabbear
ID: 20417000
OH MY GOD...
now it works..
and I dont know why...

Works in asp, BUT not in aspx
document.writeln('<span id="menuContainer"  ></span>');  

Works in BOTH asp and aspx
document.writeln('<span id="menuContainer">&nbsp;</span>');

Crazy browser..
0

Featured Post

Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Nothing in an HTTP request can be trusted, including HTTP headers and form data.  A form token is a tool that can be used to guard against request forgeries (CSRF).  This article shows an improved approach to form tokens, making it more difficult to…
This article aims to explain the working of CircularLogArchiver. This tool was designed to solve the buildup of log file in cases where systems do not support circular logging or where circular logging is not enabled
The viewer will the learn the benefit of plain text editors and code an HTML5 based template for use in further tutorials.
HTML5 has deprecated a few of the older ways of showing media as well as offering up a new way to create games and animations. Audio, video, and canvas are just a few of the adjustments made between XHTML and HTML5. As we learned in our last micr…

773 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question