我做了一个ASPX的页面,这个页面里要调用一些javascript,当运行这个ASPX以后,我用鼠标移到一个连接上(触发一个JS的运行),IE下面的就提示JS有错误,找不到某一个函数,但是我把ASPX运行以后生成的HTML代码原封不动的粘贴到一个HTML页面里(用IE的查看原代码的方式),运行同一个操作(用鼠标移到一个连接上触发一个JS的运行),就没有提示任何错误而且正常运行,请问这是怎么一回事???

解决方案 »

  1.   


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <HTML>
    <HEAD>
    <title>sc</title>
    <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
    <meta name="CODE_LANGUAGE" Content="C#">
    <meta name="vs_defaultClientScript" content="JavaScript">
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    <SCRIPT src="popmenu.js"></SCRIPT>
    <link href="css.css" rel="stylesheet" type="text/css">
    </HEAD>
    <body>
    <form name="Form1" method="post" action="shoucang.aspx" id="Form1">
    <input type="hidden" name="__VIEWSTATE" value="dDwtMTYzNDIxNTE1Nzt0PDtsPGk8MT47PjtsPHQ8O2w8aTw3Pjs+O2w8dDxwPHA8bDxUZXh0Oz47bDxcPFNDUklQVCBsYW5ndWFnZT0iamF2YXNjcmlwdDEuMiJcPgpsaW5rc2V0WzFdPW5ldyBBcnJheSgpCmxpbmtzZXRbMV1bMF09J1w8ZGl2IGNsYXNzPSJtZW51aXRlbXMiXD5cPGEgaHJlZj0iaHR0cDovL3d3dy5zb25nZGF5LmNvbSJcPnNvbmdkYXlcPC9hXD5cPC9kaXZcPicKXDwvU0NSSVBUXD5cPGEgY2xhc3M9Im5hdmxpbmsiIG9ubW91c2VvdmVyPSJzaG93bWVudShldmVudCwxLDEsZmFsc2UpIiBvbm1vdXNlb3V0PSJkZWxheWhpZGVtZW51KCkiIGhyZWY9IiNheiJcPlw8SU1HIFNSQz0iaW1hZ2VzL2Jhci5naWYiIFdJRFRIPTE1IEhFSUdIVD0xNSBib3JkZXI9MFw+enh6XDwvYVw+XDxiclw+Oz4+Oz47Oz47Pj47Pj47PjKcX1r7ZbE3A1ClVieQfvqxeqY/" /> <FONT face="宋体">
    <TABLE id="Table1" cellSpacing="0" cellPadding="0" width="550" align="center" border="0">
    <TR>
    <TD width="70%">把你喜欢的网址添加进入收藏夹<BR>
    <BR>
    </TD>
    <TD rowspan="2">
    <P>
    <input type="submit" name="toadd" value="确定" id="toadd" style="width:150px;" /><BR>
    <BR>
    <input type="submit" name="toaddfenlei" value="创建收藏分类" id="toaddfenlei" style="width:150px;" /><INPUT id="fenlei" type="hidden"></P>
    </TD>
    </TR>
    <TR>
    <TD width="70%">
    <TABLE id="Table2" style="FONT-SIZE: 9pt" cellSpacing="0" cellPadding="0" width="100%"
    align="center" border="0">
    <TR>
    <TD width="15%">名称:</TD>
    <TD>
    <input name="mingcheng" type="text" id="mingcheng" style="width:200px;" /></TD>
    </TR>
    <TR>
    <TD width="15%" vAlign="top">创建到:</TD>
    <TD><DIV class="menuskin" id="popmenu" onmouseover="clearhidemenu();highlightmenu(event,'on')"
    style="Z-INDEX: 100" onmouseout="highlightmenu(event,'off');dynamichide(event)"></DIV>
    收藏夹<BR>
    <span id="showfenlei"><SCRIPT language="javascript1.2">
    linkset[1]=new Array()
    linkset[1][0]='<div class="menuitems"><a href="http://www.songday.com">songday</a></div>'
    </SCRIPT><a class="navlink" onmouseover="showmenu(event,1,1,false)" onmouseout="delayhidemenu()" href="#az"><IMG SRC="images/bar.gif" WIDTH=15 HEIGHT=15 border=0>zxz</a><br></span></TD>
    </TR>
    </TABLE>
    </TD>
    </TR>
    </TABLE>
    </FONT>
    </form>
    </body>
    </HTML>
      

  2.   

    <SCRIPT src="popmenu.js"></SCRIPT>
    用<!--#include ..包含进来试试.
      

  3.   

    include了js就根本没有办法用了
      

  4.   

    把ViewState去掉试一试
    kill it
    <input type="hidden" name="__VIEWSTATE" value="dDwtMTYzNDIxNTE1Nzt0PDtsPGk8MT47PjtsPHQ8O2w8aTw3Pjs+O2w8dDxwPHA8bDxUZXh0Oz47bDxcPFNDUklQVCBsYW5ndWFnZT0iamF2YXNjcmlwdDEuMiJcPgpsaW5rc2V0WzFdPW5ldyBBcnJheSgpCmxpbmtzZXRbMV1bMF09J1w8ZGl2IGNsYXNzPSJtZW51aXRlbXMiXD5cPGEgaHJlZj0iaHR0cDovL3d3dy5zb25nZGF5LmNvbSJcPnNvbmdkYXlcPC9hXD5cPC9kaXZcPicKXDwvU0NSSVBUXD5cPGEgY2xhc3M9Im5hdmxpbmsiIG9ubW91c2VvdmVyPSJzaG93bWVudShldmVudCwxLDEsZmFsc2UpIiBvbm1vdXNlb3V0PSJkZWxheWhpZGVtZW51KCkiIGhyZWY9IiNheiJcPlw8SU1HIFNSQz0iaW1hZ2VzL2Jhci5naWYiIFdJRFRIPTE1IEhFSUdIVD0xNSBib3JkZXI9MFw+enh6XDwvYVw+XDxiclw+Oz4+Oz47Oz47Pj47Pj47PjKcX1r7ZbE3A1ClVieQfvqxeqY/" />
      

  5.   

    怎么把ViewState去掉?
    我当时把ViewState也一起复制到了HTML文件里,但是运行它一点错误都没有,我想不是ViewState的原因,我想是不是后缀名一个是ASPX一个是HTM的原因??
      

  6.   

    是不是因为ASPX控件不受JS的控制,但是我的JS是动态生成的,该怎么办啊?
      

  7.   

    >>> <SCRIPT src="popmenu.js"></SCRIPT>用记事本打开这个popmenu.js,另存为->编码选择utf-8
      

  8.   

    你的html没有指定编码方式,iis输出时和客户端解析是就会按照客户端设置,比如gb2312
    js文件默认ansi编码,在简体中文的系统内,也就是gb2312
    所以编码一致,不会有问题而aspx默认以utf-8编码输出,客户端以utf-8解析
    但是不管js文件是何种编码那还是被当作utf-8解析,js文件内的乱码会造成错误