ASP.NET进阶:调用Javascript

调用Javascript

 不管是论坛还是QQ群里,很多同学都会问一个问题,就是他的后台程序怎么调用前台JS的方法。问这个问题其实不奇怪,奇怪的是很多同学没想到的一点就是B/S到底是怎么工作的?知道工作方式我们还能不会“调用”吗?
B/S:Browser / Server,即“浏览器/服务端”模式的应用程序。Browser就是浏览器,浏览器打开网页后网页是在哪?客户端!缓存里!Javascritpt是客户端运行的,而后台程序是服务器运行的,服务器怎么能调用到客户端的代码呢?
服务器的责任是什么?是负责的是页面的生成! 既然可以是生成页面,我可以生成的代码里有对某个JS的方法的调用。
例如:
<script>ITPUB个人空间ue*o3_SA,Y/s
function alertme(){ITPUB个人空间%MJ$yr.T6HY9X8k
    alert("hello");ITPUB个人空间!W.V|UE5o-S&{E
}
#s*I[Ft:M0JZ0
</script>
我想调用这个alertme,如果我生成的html代码里有 <script>alertme();</script>就可以了吧?怎么才能有? 输出啊!
ASP.NET里也提供了几种不同的输出方式,RegisterClientScriptBlock 、RegisterStartupScript、 RegisterClientScriptInclude、RegisterClientScriptResource等,平时我们用Reponse.Write("")即可。那么这么多RegisterClientScript我该用哪个呢?ITPUB个人空间CjPZd7sV$I
首先我们要清楚这些RegisterClientScript是干什么的,自然就知道怎么用了。打开MSDN(我们要习惯查看MSDN)看看每个的详细介绍。
 
protected void Page_Load(object sender, EventArgs e)
a#Nc]"P)pS0
{ITPUB个人空间| a/TQbv%h`]V
    Page.ClientScript.RegisterStartupScript(GetType(), "alert""<script type=text/javascript> document.write('RegisterStartupScript'); </script>");ITPUB个人空间i7W5Z3i&b
    Page.ClientScript.RegisterClientScriptBlock(GetType(), "alert""<script type=text/javascript> document.write('RegisterClientScriptBlock'); </script>");ITPUB个人空间jtZ})~_Cj+X
    Page.ClientScript.RegisterClientScriptInclude(GetType(), "alert""scripts/jquery-1.4.1.js");ITPUB个人空间!Aw]a-\5p L
    Page.ClientScript.RegisterClientScriptResource(GetType(), "jquery");ITPUB个人空间~+f#q%BA
}
IGw6w:Ey0

 看看生成的HTML:

代码
<!--这是Block-->ITPUB个人空间B�XPh!W1ao}o
<script type=text/javascript> document.write('RegisterClientScriptBlock'); </script> 
,O�d7[2NM;]?0
,lXY"e]7oD+ny2ZI0
<!--这是Include-->
'@4Lz1u!F0@;d0
<script src="scripts/jquery-1.4.1.js" type="text/javascript"></script> ITPUB个人空间vr6qIqq

@~F.|,G0

<!--这是Source-->
XFe&B awy8_&x

摘自 http://space.itpub.net/12639172/viewspace-673143

原文地址:https://www.cnblogs.com/lushuicongsheng/p/1905825.html