方法壹、用ClientScript類動態添加腳本
用法如下:在想調用某個javascript腳本函數的地方添加代碼,註意要保證MyFun已經在腳本文件中定義過了。
ClientScript.RegisterStartupScript(ClientScript.GetType(), myscript, <scriptMyFun();</script);
這個方法比Response.Write更方便壹些,可以直接調用腳本文件中的自定義函數。
可以在程序的任何地方執行,o(?_?)o...,是不是很好用呢
註意執行順序:先執行Client ,再執行Server
方法二、用Response.Write方法寫入腳本
比如在妳單擊按鈕後,先操作數據庫,完了後顯示已經完成,可以在最後想調用的地方寫上
Response.Write(<script type='text/javascript'alert();</script);
這個方法有個缺陷就是不能調用腳本文件中的自定義的函數,只能調用內部函數,具體調用自定義的函數只能在Response.Write寫上函數定義,比如:
Response.Write(<script type='text/javascript'function myfun(){...}</script);
方法三、是我自認為最靈活的壹種,ClientScript.RegisterStartupScript實例代碼:StringBuilder sb = new StringBuilder();
sb.Append(<script language='javascript');
sb.Append(Button2_onclick(' + serverPath + '));
sb.Append(</script);
ClientScript.RegisterStartupScript(this.GetType(), LoadPicScript, sb.ToString());
方法四、Button1.Attributes.Add(onclick, return Client_Click());
Client_Click() 是壹個前臺方法,可以替換成壹般的腳本如:retrun confirm('確定刪除嗎?')
方法五、OnClientClick
<asp:Button ID=Button1 runat=server Text=Button OnClientClick=client_click() OnClick=Button1_Click /
client_click() 就是javascript的壹個方法
(但是需要註意的是vs2003不支持這個方法)