1.使用OnClientClick屬性打開(kāi)客戶(hù)端腳本,使用方法如下:
js腳本:
| 以下是代碼片段: <script language="javascript" type="text/javascript"> function opensite() ...{ window.open("http://www.cnblogs.com"); return true; } </script> |
| 以下是代碼片段: <asp:Button ID="Button1" OnClientClick="opensite()" runat="server" Text="打開(kāi)站點(diǎn)" /> |
以下幾種方法都是派生自ClientScriptManager類(lèi),研究一下里面有幾十個(gè)方法,而且有些重載了.我拿最常用的方法講一下.
1) RegisterClientScriptBlock方法:將js區塊添加到頁(yè)面頂端,你可以以字符串形式創(chuàng )建這些js代碼,然后將它傳遞給添加網(wǎng)頁(yè)的方法。其對應的包含方法IsClientScriptBlockRegistered()
使用方法如下:
| 以下是代碼片段: //動(dòng)態(tài)創(chuàng )建js文件 string info = ""; info += "function showName(UserName)"; info += "{alert(’你的名字是:’+UserName);}"; // 判斷myName是否已經(jīng)被注冊 if (!Page.ClientScript.IsClientScriptBlockRegistered(this.GetType(), "myName")) ...{ //動(dòng)態(tài)注冊js Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "myName", info, true); } |
注意:可以查看一下生成頁(yè)面的代碼究竟怎樣的?
2)RegisterClientScriptInclude方法:通過(guò)外部添加引用js腳本。其對應的包含方法IsClientScriptIncludeRegistered()
假如有一段這樣的info.js腳本,如下所示:
| 以下是代碼片段: function showCity(City) ...{ alert("我愛(ài)我的:"+City); } |
| 以下是代碼片段: //動(dòng)態(tài)注冊info.js的javascript文件 //判斷是否已被注冊 if (!ClientScript.IsClientScriptIncludeRegistered(this.GetType(), "myMessage")) ...{ //若沒(méi)有被注冊,剛將Info.js動(dòng)態(tài)注冊 Page.ClientScript.RegisterClientScriptInclude("myMessage", "js/info.js"); } |
3)RegisterStartupScript方法:將js區塊添加當網(wǎng)頁(yè)完成加載,但是在引發(fā)網(wǎng)頁(yè)的onload事件之前,就會(huì )執行。其對應的包含方法IsStartupScriptRegistered。
使用它的例子如下:
| 以下是代碼片段: string info = " "; if (!Page.ClientScript.IsStartupScriptRegistered("welcome")) ...{ Page.ClientScript.RegisterStartupScript(this.GetType(), "welcome", info); } |
使用它的例子如下:
| 以下是代碼片段: string info = "return confirm(’你確認刪除?’);"; if (!Page.ClientScript.IsOnSubmitStatementRegistered(this.GetType(), "myPage")) ...{ Page.ClientScript.RegisterOnSubmitStatement(this.GetType(), "myPage", info); } |
聯(lián)系客服