內置的ASP的幾個表單元素驗證器。它們工作正常 - 如果我點擊提交按鈕(一個按鈕),驗證發生而沒有回傳,錯誤顯示在ValidationSummary中。當發生這種情況時,我還想調用一個代碼隱藏的方法來更改元素的CSS,將它們的背景顏色切換爲紅色以反映錯誤。我試圖在提交按鈕中同時使用OnClick和OnClientClick來調用此方法,但兩個參數似乎都不會觸發該方法 - 客戶端驗證始終優先,並且回發永遠不會發生。任何人都可以啓發我嗎?問題與我使用的回傳和驗證
編輯#1
使用orandovs鏈接工作不行了改變元素本身,但如何其父?
例如,在C#我做:
foreach (BaseValidator validator in Page.Validators)
{
Panel panel = validator.Parent as Panel;
if (!validator.IsValid)
panel.CssClass = "error";
else
panel.CssClass = "normal";
}
有沒有辦法讓母公司控制(這些都是一致的面板,所以我知道的CssClass會存在)使用JavaScript?喜歡的東西:
$("#" + Page_Validators[i].controltovalidate.parent).CssClass("error");
這裏是一個類似的問題:http://stackoverflow.com/questions/1301508/change-textboxs-css-class-when -asp-net-validation-fails – orandov 2010-02-18 18:58:16