我在做网站的时候有时需要通过javascript脚本来实现一些功能,但是发现javascript脚本一旦出错很难发现错在哪,我对javascript脚本不是很熟,大家在写程序时是怎样处理javascript脚本的呢?希望能够得到一些这方面大家的经验,怎样对.net中的javascript脚本进行调试?

解决方案 »

  1.   

    一般用alert()来进行调试,.NET也可以跟踪脚本的,但我没用过,没有发言权,顺便关注一下
      

  2.   

    .NET也可以跟踪脚本的?
    我渴望知道,哪位能告诉我,等待ing...
      

  3.   

    还有,希望介绍些好的javascript的网站或论坛,谢谢
      

  4.   

    1.首先在ie中设定允许脚本调试
    2.在调试的过程中选择调试运行文档就可以添加断点调试和c#调试方法一样,很方便。
      

  5.   

    把你要调试的变量用 alert 显示出来是最有效的,最好选择那些关键变量
      

  6.   

    1.首先在ie中设定允许脚本调试
    2.在调试的过程中选择调试运行文档就可以添加断点调试和c#调试方法一样,很方便。说对了一半,是可以调试,不过和C#调试可是有本质上的不一样。
      

  7.   

    to :   zhangweijiang
    在调试的方式上没有什么区别,你设断点的方式是怎样的?
    正确设定可以进行变量监视等各种功能,不会有执行不停的现象。
    要对 调试运行文档 中的js添加断点,其他地方当然会不认的。
      

  8.   

    发点原创吧,我也是看了MSDN学的,不过我这里写的第一点在MSDN中没有提及,令我摸索了很久
    第一步:在IE的“Internet设置”中选择“高级”——“安全”——“启用集成windows身份验证”(这一步很重要!!!)
    第二步:同样在“Internet设置”中把“禁止脚本调试”的勾去掉
    第三步:用调试模式启动程序
    第四步:在vs.net的菜单选择“调试”——“窗口”——“运行文档”
    第五步:在“运行文档”窗口中双击要调试的文档
    第六步:在该文档中需要的脚本开始调试的位置设置断点
    第七步:自己操作,令程序运行到断点处,余下的就是调试程序了,我也不多说了。注意,如果还是不行,那可能是缺少了一个名为“ASPCLIENTDEBUG”的cookie。设置这个cookie的方法:
    1.创建包含以下代码的 HTML 文本文件: 
    <html>
    <head><script language="JavaScript">function set ()
    {
        var expdate = new Date(); 
        expdate.setMonth(expdate.getMonth()+6);
       alert("setting cookie \""+form1.txtName.value+"\" to \""+form1.txtValue.value+"\"");
        setCookie(form1.txtName.value, form1.txtValue.value, expdate); 
    }function get ()
    {
       alert("getting cookie \""+form1.txtName.value+"\"");
        var c = getCookie(form1.txtName.value);
        alert( "cookie = "+c );    form1.txtValue.value = c;
    }function getCookie (sCookieName)
    {
        var sName=sCookieName+"=", ichSt, ichEnd;
        var sCookie=document.cookie;    if ( sCookie.length && ( -1 != (ichSt = sCookie.indexOf(sName)) ) )
        {
            if (-1 == ( ichEnd = sCookie.indexOf(";",ichSt+sName.length) ) )
                ichEnd = sCookie.length;
            return unescape(sCookie.substring(ichSt+sName.length,ichEnd));
        }
        
        return null;
    }
       
    function setCookie (sName, vValue)
    {
        var argv = setCookie.arguments, argc = setCookie.arguments.length;
        var sExpDate = (argc > 2) ? "; expires="+argv[2].toGMTString() : "";
        var sPath = (argc > 3) ? "; path="+argv[3] : "";
        var sDomain = (argc > 4) ? "; domain="+argv[4] : "";
        var sSecure = (argc > 5) && argv[5] ? "; secure" : "";
        document.cookie = sName + "=" + escape(vValue,0) + sExpDate + sPath + sDomain + sSecure + ";";
    }
        
    function deleteCookie (sName)
    {
        document.cookie = sName + "=" + getCookie(sName) + "; expires=" + (new Date()).toGMTString() + ";";
    }</script></head><body><form name=form1>
       cookie name:<input type="text" name="txtName" value="ASPCLIENTDEBUG"><p>
       cookie value:<input type="text" name="txtValue" value="doesn't matter"><p>
       <input type="button" value="Set Cookie" onClick="set()">
       <input type="button" value="Get Cookie" onClick="get()">
    </form>
    </body>
    </html>
    2.将此文件保存为 cookie.html。 
    3.将此文件复制到 
    c:\inetput\wwwroot
    4.在 Internet Explorer 的“地址”框中,键入: 
    http://localhost/cookie.html
    5.在 http://localhost/cookie.html 窗口中,单击“设置 Cookie”按钮。