머릿말에서 말한것 처럼 정말 웹페이지를 만들때 자바 스크립트가 많이 쓰인다.이것을 클래스로 만들어 매소드로 정의 한다음에 계속 가져다가 써보자


[자주쓰이는 자바스크립를 알아 보자!]


alert,window.open,alert.Location.href,window.opener.Location.reload()....등등 많이 쓰이고 있다. 한번 클래스를 만들어 놓고 자신이 자주 쓰는 스크립트는 계속 추가를 시켜주면된다.


[클래스 만들기!]


간단한 클래스 이기 때문에 우선 생성자는 없습니다.

그리고 서버단에서 자바스크립트를 쓸때 Response.write("") 로 값을 뿌리기 때문에 매서드를 만들때 String 형으로 반환하는 매서드를 만들겠습니다.

public static string JavascriptAlert(string str)

{

    StringBuilder strbuild = new StringBuilder("");

    strbuild.Append("<script language=\"javascript\">");

    strbuild.Append("   alert(\"" + str + "\");");

    strbuild.Append("</" + "script>");

    return strbuild.ToString();

}

 

alert 를 창을 띄우는 스크립트를 StringBuilder 클래스를 사용하여 문자열을 추가 시키고 있습니다. 여기에서 String 클래스를 안쓰고 굿이 StringBuilder 클래스를 사용하는 이유는 설명 안하겠습니다. 이부분은 다른 분이 올려놨으니 참고 하세요(최고 아티클의 [초급에서 중수로] .NET에서 문자열에 대한 이해)

그리고 static 로 만든 이유는 매번 자바스크립트를 써야 하는데 그때마다 인스턴스화를 안해주기 위해서 입니다. 그러니깐 언제 어디서든

클래스명.JavascriptAlert("창을 띄워라");

이런식으로 인스턴스화를 안해주고 사용할수가 있는 것이지요. 혹시 만약 이부분이 이해가 안가신다면 클래스 책 조금만 뒤지면 나올겁니다. 이렇게 다른 자바 스크립트도 만들어서 사용하 시면 편할겁니다. 그리고 응용을 해보면 게시판 같은 것을 만들때 html를 해석을 하지 말아야 할때가 있습니다. 이부분도 자주쓰일것같은데 이런것도

public static string Tagdate(string str)

{

   StringBuilder strbuild = new StringBuilder(str);

   strbuild.Replace("&apos;", "'");

   strbuild.Replace("&", "&amp;");

   strbuild.Replace("<", "&lt;");

   strbuild.Replace(">", "&gt;");

   strbuild.Replace("\n", "");

   strbuild.Replace("\r", "");

   strbuild.Replace("\"","");

   strbuild.Replace("\t", "&nbsp;&nbsp;&nbsp;&nbsp;");

   strbuild.Replace(" ", "&nbsp;");

   return strbuild.ToString();

}


문자열만 넘겨 주면 Replace로 바꿔줘서 리턴 받아 버리면 편하실 겁니다. 설명 할게 별로 없군요. 그냥 하나의 팁같은 걸로 공유 하고 싶었습니다.



using System;

using System.Text;


namespace wangasp

{

    /// <summary>

    /// utils에 대한 요약 설명입니다.

    /// </summary>

    public class utils

    {

        public utils()

        {

           

        }


        public static string JavascriptAlert(string str)

        {

            StringBuilder strbuild = new StringBuilder("");


            strbuild.Append("<script language=\"javascript\">");

            strbuild.Append("   alert(\"" + str + "\");");

            strbuild.Append("</" + "script>");


            return strbuild.ToString();


        }


        public static string Javascriptwindowopen(string str,string at)

        {

            StringBuilder strbuild = new StringBuilder("");


            strbuild.Append("<script language=\"javascript\">");

            strbuild.Append("   window.open(\"" + str + "\",\"\",\"" + at + "\");");

            strbuild.Append("</" + "script>");


            return strbuild.ToString();

        }


        public static string Javascriptwindowopen(string str)

        {

            StringBuilder strbuild = new StringBuilder("");


            strbuild.Append("<script language=\"javascript\">");

            strbuild.Append("   window.open(\"" + str + "\",\"\",\"\");");

            strbuild.Append("</" + "script>");


            return strbuild.ToString();

        }


        public static string JavascriptRedirect(string str)

        {

            StringBuilder strbuild = new StringBuilder("");


            strbuild.Append("<script language=\"javascript\">");

            strbuild.Append("   document.Location.href=\'" + str + "';");

            strbuild.Append("</" + "script>");


            return strbuild.ToString();

        }


        public static string JavascriptReload()

        {

            StringBuilder strbuild = new StringBuilder("");


            strbuild.Append("<script language=\"javascript\">");

            strbuild.Append("window.Location.reload(true);");

            strbuild.Append("</" + "script>");


            return strbuild.ToString();

        }


        public static string JavascriptBack()

        {

            StringBuilder strbuild = new StringBuilder("");


            strbuild.Append("<script language=\"javascript\">");

            strbuild.Append("   history.back();");

            strbuild.Append("</" + "script>");


            return strbuild.ToString();

        }


        public static string JavascriptClose()

        {

            StringBuilder strbuild = new StringBuilder("");


            strbuild.Append("<script language=\"javascript\">");

            strbuild.Append("   self.close();");

            strbuild.Append("</" + "script>");


            return strbuild.ToString();

        }


        public static string HTMLtoSQLServer(string str)

        {

            StringBuilder strbuild = new StringBuilder(str);


            strbuild.Replace("'", "''");


            return strbuild.ToString();

        }


        public static string JavascriptAlertAndLocation(string str,string Locationstr)

        {

            StringBuilder strbuild = new StringBuilder("");


            strbuild.Append("<script language=\"javascript\">");

            strbuild.Append("   alert(\"" + str + "\");Location.href=\""+ Locationstr +"\";");

            strbuild.Append("</" + "script>");


            return strbuild.ToString();

        }


        public static string JavascriptAlertAndOpenerReload(string str)

        {

            StringBuilder strbuild = new StringBuilder("");


            strbuild.Append("<script language=\"javascript\">");

            strbuild.Append("   alert(\"" + str + "\");window.opener.Location.reload();window.close();");

            strbuild.Append("</" + "script>");


            return strbuild.ToString();

        }


        //html를 해석을 못하게 할때 이 함수를 가져다 쓴다.

        public static string TagDisable(string str)

        {

            StringBuilder strbuild = new StringBuilder(str);

           

            strbuild.Replace("&apos;", "'");

            strbuild.Replace("&", "&amp;");

            strbuild.Replace("<", "&lt;");

            strbuild.Replace(">", "&gt;");

            strbuild.Replace("\n", "<br>");

            strbuild.Replace("\t", "&nbsp;&nbsp;&nbsp;&nbsp;");

            strbuild.Replace(" ", "&nbsp;");


            return strbuild.ToString();

        }


        public static string Tagdate(string str)

        {

            StringBuilder strbuild = new StringBuilder(str);

           

            strbuild.Replace("&apos;", "'");

            strbuild.Replace("&", "&amp;");

            strbuild.Replace("<", "&lt;");

            strbuild.Replace(">", "&gt;");

            strbuild.Replace("\n", "");

            strbuild.Replace("\r", "");

            strbuild.Replace("\"","");

            strbuild.Replace("\t", "&nbsp;&nbsp;&nbsp;&nbsp;");

            strbuild.Replace(" ", "&nbsp;");


            return strbuild.ToString();

        }


        public static string Taglecture(string str)

        {



            StringBuilder strbuild = new StringBuilder(str);

           

            strbuild.Replace("\r\n", "<br>");


            return strbuild.ToString();

        }

       


    }

}

출처 : 고수닷컴

 

Windows Script 5.6를 설치함으로 해결함.

 

참고 : http://support.microsoft.com/default.aspx?scid=kb;en-us;323885

 

Windows Script 5.6 다운로드
http://www.microsoft.com/downloads/details.aspx?FamilyId=C717D943-7E4B-4622-86EB-95A22B832CAA&displaylang=en

 

 

PC 에 설치된 OCX activeX 또는 OLE 등에 문제가 있을 경우 나옵니다. 말씀하신 자동화서버 어쩌구..는 Jscript 런타임오류 중 하나입니다.

첫번째 할것으로서 캐쉬를 지우고 다시 시도해봅니다.

인터넷익스플로러의 메뉴중에서 도구 - 인터넷옵션 - 일반 으로 들어가서 한가운데 있는 "파일삭제" 아이콘을 누릅니다. 다시 창이 뜨는데 "오프라인 항목을 모두 삭제... " 여기다 체크표시 하고 확인 누릅니다. 모래시계가 없어질때까지 기다린다음, 다시 파일삭제 오른쪽에 있는 "설정" 아이콘을 누릅니다.

여기서 저장된 페이지 확인 ... 어쩌구 하는 설정을 "페이지를 열때마다" 로 되어있는지 확인하세요. 아마 대부분 "자동으로" 되어있을 겁니다. 그리고 그 밑에 보면 캐쉬 크기 설정하게 되어있는데 엄청 클겁니다. 이걸 15MB 정도로 팍 줄여버리세요.

전부 확인 눌러서 나가고 .. 익스플로러 떠있는거 전부 닫아버리고 처음부터 다시 열어서 잘 되는지 확인해보세요.

그래도 안된다면??
그러면 Microsoft 의 기술문서를 좀 찾아야 합니다.

http://support.microsoft.com/default.aspx?scid=fh;KO;KBHOWTO

위 주소로 갑니다.

기술문서 종류 : 한글
제품은 : Internet Explorer 6.0
검색어 : "자동화 서버는 개체를 만들 수 없습니다"
결과제한 : 150개 로 놓고 검색합니다.

몇가지가나올텐데 여기서 중간쯤에 보면 "자세히 검사하기" 라는 탭이 있습니다.
그걸 누르면 결과내 재검색이 나옵니다. 여기다가는 "페이지에 오류가 있습니다" 를 놓고 재검색 해보세요. 결과가 좀 줄어들텐데 그중에서 제일 근접한 에러를 찾아보세요.


비주얼 웹 디벨로퍼 2005 익스프레스로 자바스크립트 디버그 하기




비주얼 웹 디벨로퍼 2005 익스프레스로 자바스크립트의 디버그 작업을 할 수 있습니다. 그러나 개발환경이 비주얼 웹 디벨로퍼 2005 익스프레스가 아닌 상황이라면, 디버그 작업이 허용되지 않습니다. 상용 비주얼 스튜디오 2005에서는 스크립트의 디버거가 필요한 상황에서 인터넷 익스플로러에서 바로 연결을 시켜주지만, 익스프레스 버전에서는 그러한 기능이 제외되었기 때문입니다. 여기서는 개발환경이 비주얼 웹 디벨로퍼 2005 익스프레스가 아닌 경우에 어떻게 비주얼 웹 디벨로퍼 2005 익스프레스에서 인터넷 익스플로러 브라우저의 스크립트 디버그를 할 수 있을지를 알아보도록 하겠습니다. 방법은 간단하며, 다음을 따라 해보시면 됩니다. 우선 다음과 같이 디버그 작업을 해볼 소스를 하나 준비하겠습니다.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script type="text/java script">
window.0nload = function() {
var hello = document.getElementById( "Hello" );
debugger;
alert!( hello.innerHTML );
}
</script>
</head>
<body>
<div id="Hello">Hello</div>
</body>
</html>
이제 이 파일을 비주얼 웹 디벨로퍼 2005 익스프레스에서 디버그하는 방법은 다음과 같습니다.
  1. 비주얼 웹 디벨로퍼 2005 익스프레스를 실행합니다.
  2. 파일 > 새 웹 사이트를 클릭합니다.
  3. 빈 웹 사이트를 선택한 후, 위치 항목은 파일 시스템을 선택해서 적당한 경로를 선택해줍니다. 이 경로는 그냥 임시로 쓰이며, 아무 파일도 필요없이 그냥 빈 디렉터리면 됩니다.
  4. 확인을 클릭합니다.
  5. 이제 솔루션 탐색기를 보면 새 솔루션이 하나 생성되어있을 것입니다.
  6. 메뉴의 디버그 > 디버깅 시작을 클릭합니다.
  7. 디버깅 사용 안 함이라는 창이 나타났다면, 디버깅하도록 설정한 새 Web.config 파일 추가를 선택한 후 확인을 클릭합니다.
  8. 이제 잠시후면, 비주얼 웹 디벨로퍼 2005 익스프레스가 인터넷 익스플로러를 실행할 것입니다. 실행될 인터넷 익스플로러는 디버그 모드로 비주얼 웹 디벨로퍼 2005 익스프레스가 스크립트에 간섭할 수 있는 상태가 됩니다.
  9. 이제 이 인터넷 익스플로러 창에서 아까 작성한 파일을 열어줍니다.
  10. 이제 파일의 9번째 줄의 debugger; 라는 코드가 하이라이트 되면서 해당 라인에서 스크립트 실행이 멈추고, 비주얼 웹 디벨로퍼 2005 익스프레스가 해당페이지를 디버그 할 수 있는 상태가 될 것입니다.
  11. 이제 마음껏 디버깅을 즐기시면 됩니다.


펌 : http://delimount.com
출처 : http://cafe.daum.net/aspdotnet

+ Recent posts