2014年9月29日 星期一

ASP.NET JavaScript Server Side


因為JavaScript是直譯語言,所以有時JavaScript的位置不同會有所不同的影響

這邊介紹三種方法

Page.ClientScript.RegisterClientScriptBlock

Page.ClientScript.RegisterStartupScript

Page.ClientScript.RegisterClientScriptInclude

以下是三種方法的差別

//Block的是將JavaScript寫到Client端HTML裡的
下面 Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "test1", "function Hello1(){alert('這是Block');}", true); //Startup的是將JavaScript寫到Client端HTML裡的
上面 Page.ClientScript.RegisterStartupScript(this.GetType(), "test2", "function Hello2(){alert('這是Startup');}", true); //Include的是將JavaScript寫到Client端HTML裡的
下面 Page.ClientScript.RegisterClientScriptInclude(this.GetType(), "test3", Page.ResolveUrl("~/myscript/cool.js")); 這個cool.js的內容是function Hello3() { alert('這是Include'); } 拉一個Asp.net的Button,設定onclientclick="Hello1()"就可以呼叫上面的Hello1()或Hello2()或Hello3() 最後補上產生至Client端的HTML碼
下面這行是Page.ClientScript.RegisterClientScriptBlock產生的 下面這行是Page.ClientScript.RegisterClientScriptInclude產生的
下面這行是Page.ClientScript.RegisterStartupScript產生的
轉自 http://welkingunther.pixnet.net/blog/post/27831277-(asp.net)%E5%8B%95%E6%85%8B%E8%A8%BB%E5%86%8Ajavascript%E8%87%B3client%E7%AB%AF