2009-04-21 63 views
10

我使用老式的ASP.NET驗證(ugh)進行結帳過程。我有一個複選框 - 「我會打電話給我的信用卡詳細信息」 - 。如果選中,我需要在客戶端和回發站上禁用信用卡號碼所需的字段驗證器和cc驗證器。當複選框被選中時,禁用一些ASP.Net驗證控件

它是如何做到的?

回答

11

您可以禁用驗證客戶端(在JavaScript):

function disable(validatorId) 
{ 
    var validator = document.getElementById(validatorId); 
    ValidatorEnable(validator, false); 
} 

凡validatorId是ClientID的驗證器將被禁用。完整的示例請參閱this page

+0

將檢查出來,並採取相應的行動 - 謝謝。 – 2010-02-09 16:19:02

+1

我需要在ValidatorEnable()之後添加以下內容以隱藏任何現有的驗證器消息。 validator.isvalid = true; ValidatorUpdateDisplay(validator); – 2010-04-25 22:14:41

3

您可以禁用驗證服務器端

MyFieldValidator.Enabled = MyCheckBox.Checked 

Page.Validate() 
If Page.IsValid Then 
    'stuff 
end if 
2

如果你禁用服務器端就可以做

button1.CausesValidation = False 
在CheckChangedEvent

,如果你有很多的驗證和需要禁用所有這些,這是更有幫助。

相關問題