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태그에 뒤에 생성되냐 닫는 form 태그 앞에 생성되냐에
따라 정상적으로 실행되는 자바스크립트가 있을수도 있지만 html이 생성되지 않은 컨트롤에
접근하는 코드가 존재하면 오류가 발생할 수도 있다.
[비하인드 코드]
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 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이 생성되지 않은 컨트롤에
접근하는 코드가 존재하면 오류가 발생할 수도 있다.