2014-03-31 76 views
1

我有值的comboboxUserEdit頁面,選擇他想要使用的服務,但在這個combobox他只有一些服務選擇,防止變化值在HTML頁面從頁面檢查

<div class="editor-field"> 
    <select style="width:175px;" id="ServiceCode" name="ServiceCode"> 
     <option selected="selected" value="service1">service1</option> 
     <option value="service2">service2</option> 
    </select> 
</div> 

但我發現,如果用戶使用頁面檢查器來改變,例如選擇服務1和編輯它以服務3(這是不是在combobox),但在確認這個值(服務3將被保存在數據庫中),

如何防止用戶編輯HTML頁面的值或有辦法檢入服務器ver如果元素在HTML頁面被改變,

我有很多這樣的問題;我只是舉個例子,

+1

在發佈表單之前,您無法避免客戶修改HTML。但是您可以進行一些驗證以確保選定的選項是有效的值。如果您有要放入選擇選項的列表,請比較返回的值是否在該列表中,如果不是,則返回錯誤。你可以使用的另一件事是用表單中的值破壞,用代碼和你在服務器端翻譯這個值,並且如果它不適合你的模式,會拋出一個錯誤。 – frikinside

回答

0

沒有辦法阻止客戶端更改表單中的值,因爲有很多方法可以爲HTTP表單提交值。

因此,您應始終根據預期值驗證輸入,並拒絕意外的值。

例如,ASP.Net爲某些控件(如dropdownlist和radiobuttonlist)提供了一些內置驗證。