2009-07-06 71 views
0

很簡單的問題。使用必需的字段驗證器來禁用列表框

我有幾個ASP RequiredFieldValdators檢查一些文本框。

開箱即用,它會在按下按鈕時檢查驗證,除非滿足所有字段,否則基本禁用驗證。

我也有一堆數據點的列表框,它將新數據加載到正在驗證的文本框中。

我想確保用戶在滿足所有必填字段之前無法切換數據點。我怎樣才能「禁用」列表框(通過驗證)類似的按鈕是如何「禁用」

請隨時要求澄清

回答

0

我只是爲列表框設置CauseValidation =「true」。這讓我無法改變的數據點在當前的領域是無效

感謝所有

1

的asp.net驗證不提供這種功能有條件禁用控件。您需要編寫自己的驗證器(非常困難,或者參見Peter Blum)。在文本框的模糊事件處理程序中更好地處理它。

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $("#<%=yourTextbox.ClientID%>").blur(function(){ 
     $("#<%=yourDropDown.ClientID%>").attr("disabled","disabled"); 
     ValidateInputs();//You will validate inputs in this function 
     }); 
    }); 
</script> 

<script type="text/javascript"> 
    function ValidateInputs(){ 
    //.....Validations...... 
    if(validattions okay){ 
     $("#<%=yourDropDown.ClientID%>").attr("disabled",""); 
     } 
    } 
</script> 

PS: - 我假設你正在使用jQuery,如果不是請得到了一段時間,並參觀jQuery.com,並給它一試。

0

寫CauseValidation上apsx頁的取消按鈕=「假」。