1

我有一個包含少量文本框及其相應驗證器(ASP.NET驗證器)的頁面。使用JQUERY或簡單的Javascript查找與ASP.NET驗證器相關聯的控件

而且很顯然,我可以通過調用函數

Page_ClientValidate("myvalidators") 

其中myvalidators是

用同樣的方法,我可以驗證一個特定的驗證使用

我的驗證組名稱驗證每個從JavaScript的驗證器
ValidatorEnable(Page_Validators[0]); 

哪些只檢查特定驗證器

但我的問題是如何找到或找出與該特定驗證程序連接的控件(文本框)。

這意味着一個函數可以返回一個失敗的驗證器的所有控件。

或者更清楚的是,該函數應該返回一個控件的集合對象,其中的corespnding驗證器失敗。

更多說明添加

我的方案是爲了突出在驗證失敗的文本框的父DIV。所以,如果我得到了texbox控件對象或控件數組,我可以將它的每個父div都加亮並突出顯示它。

+0

顯示生成的html將使它很容易理解 – Adil

+0

@Adil它是否需要?因爲我指定了我用來調用驗證器的函數。 –

回答

1

Page_Validators數組返回我們在自定義驗證函數中收到的相同元數據。這意味着您可以收到相關的控制標識符,如Page_Validators[0].controltovalidate

<script> 
$(function() { 
    // process all validators and their controls 
    $.each(Page_Validators,function (i,v){ 
    if(v.controltovalidate) { 
     $("#"+v.controltovalidate); 
    } 
    }); 
}); 
</script> 
+0

對不起..我想你誤解了我的場景...... 其實我的要求是,想象我的文本框ID是txt1,並且有一個與它相關的requirefield驗證器。該驗證程序,我可以稱爲Page_Validators [0] 那麼我的問題是如何可以使用此引用Page_Validators [0]獲取該txt1對象? 希望它現在清除 –

+1

試試這個$(「#」+ Page_Validators [0] .controltovalidate) – Michael

+0

這真棒朋友...工作就像一個魅力..如果你用給定的答案替換這個,我可以標記爲正確的答案... –

相關問題