2008-11-09 57 views
0

我正在處理一個表單,我想驗證功能,如This。這一切應該在客戶端完成嗎?或服務器端?我知道使用一些MS AJAX控制,但是,我在什麼點顯示頂部的消息?ASP.NET驗證

我希望我解釋一下自己。

回答

3

驗證兩端。

  • 客戶端,以確保反饋是即時,使用戶可以完成它快速(獎金爲他們),你節省服務器資源(獎金給你)。

  • 服務器端確保任何不使用JS的用戶代理可以檢查傳入的數據。這對於阻止惡意/損壞的數據進入您的系統至關重要。

如果你只打算做一個服務器端,但通過實現一個雙系統對用戶有很大的好處。

0

驗證的客戶端,並提供反饋,當他們點擊提交按鈕

但因爲你不能信任客戶端驗證,服務器端也驗證並顯示在回發的反饋,如果一切是不正確的

但因爲你不能信任調用代碼,也驗證在數據庫服務器(存儲過程是最好的),並引發錯誤返回給調用代碼,如果有什麼不妥,

您已經涵蓋所有的基礎

這樣
0

在客戶端和服務器端進行驗證通常被認爲是一種很好的做法,以防萬一有人試圖直接提交表單POST而不實際加載頁面。

至於何時顯示驗證消息,這是個人偏好。我傾向於儘可能早地給出反饋,所以我會在領域失去焦點時做類似正則表達式驗證的事情。

0

總體而言(取決於您的Ajax框架的質量)客戶端驗證是。這是過去的遺物(Pre Ajax Times),並不再需要...

在服務器上運行所有驗證。畢竟,使用Ajax,一切都快100倍,對吧......?