1. 程式人生 > >asp.net button的OnClick和OnClientClick事件

asp.net button的OnClick和OnClientClick事件

onlick時發生postback,執行後臺程式碼。
onclientclick,就是執行javascipt程式碼,不會發生postback.

簡單說,onclick:執行C#程式碼, onclientclick:執行javascript程式碼。

onclientclick先於onclick發生,一般執行指令碼

onclientclick() 控制客戶端提交。
例如可以使用confirm('是否執行?')

return true:執行onlick事件。
return false:什麼都不幹。

再得來說:
OnClick是button的伺服器端事件

OnClientClick是button的客戶端事件

一般我們用 OnClientClick驗證我們的提交資料,但是這個一定要返回ture或者false,即一定要加上return,否則OnClick失效。當返回false時OnClick伺服器端事件才被中止,當你的js驗證有錯誤,也會跳過驗證,直接執行伺服器端事件OnClientClick。為了避免這樣的錯誤,可以考慮用服務端驗證這樣就省去了OnClientClick事件,就不用考慮和OnClick的衝突了。但是從效能上,服務端驗證,耗費了伺服器資源,呵呵,一般是沒問題