2009. 11. 2. 10:26
ASP.NET에서 동적으로 자바스크립트를 추가하기는 어렵지 않다.




[비하인드 코드]

        protected void Page_Load(object sender, EventArgs e)
        {
            // <form> 태그 뒤에 include되는 자바스크립트 파일 포함
            ClientScript.RegisterClientScriptInclude(typeof(Page), "script", "http://localhost/test.js");
            // <form> 태그 뒤에 자바스크립트 포함
            ClientScript.RegisterClientScriptBlock(typeof(Page), "script1", "<script>test('test1');</script>");
            // </form> 태그 앞에 자바스크립트 포함
            ClientScript.RegisterStartupScript(typeof(Page), "script2", "<script>test('test2');</script>");
        }


[소스보기 코드]
...
<form name="form1" method="post" action="WebForm2.aspx" id="form1">
<div>
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTE2MTY2ODcyMjlkZL22/OKqbu9X9AK4DAtdxYHrs6Rj" />
</div>
<script src="http://localhost/test.js" type="text/javascript"></script>
<script>test('test1');</script>
    <div>
    .......
    </div>
   
<script>test('test2');</script>
</form>
.....


단.. 유념해야할 사항은 여는 form태그에 뒤에 생성되냐 닫는 form 태그 앞에 생성되냐에
따라 정상적으로 실행되는 자바스크립트가 있을수도 있지만 html이 생성되지 않은 컨트롤에
접근하는 코드가 존재하면 오류가 발생할 수도 있다.
Posted by CoolDragon