2012-10-07 112 views
-1

在asp.net根據經驗我應該驗證僱員的工資。在asp.net如何驗證文本框取決於其他文本框?

如果員工更新鮮,他的薪水應該是1 lac到1.5 lac。或者薪水= 1.5美元*年的exp至3.5 *年的exp。

**我已經嘗試了* * ** 保護無效的button1_Click(對象發件人,EventArgs的){

if (IntExp == 0) 
    { 
     RangeValidator1.MaximumValue = "150000"; 
     RangeValidator1.MinimumValue = "100000"; 

     RangeValidator1.Type = ValidationDataType.Integer; 
     RangeValidator1.Validate(); 
     if (!RangeValidator1.IsValid) 
     { 
      RangeValidator1.ErrorMessage = "Enter CTC between 100000 and 150000"; 
     } 
     Response.Redirect("ABCAddEmp.aspx"); 

    } 
    else 
    { 
     int max = IntExp * 150000; 
     int min = IntExp * 350000; 
     RangeValidator1.MaximumValue = "max"; 
     RangeValidator1.MinimumValue = "min"; 
     RangeValidator1.Type = ValidationDataType.Integer; 
     RangeValidator1.Validate(); 

     if (!RangeValidator1.IsValid) 
     { 
      RangeValidator1.ErrorMessage = "Enter CTC between " + max + " and " + min; 
     } 
     Response.Redirect("ABCAddEmp.aspx"); 
    } 
+0

請提供您試過的代碼 –

+0

嘗試'RangeValidator1.MaximumValue = max; RangeValidator1.MinimumValue = min;'(即,擺脫引號 - 你試圖分配一個字符串,當它應該是一個int)。並在RangeValidator1.ErrorMessage(或使用String.Format())中的'max'和'min'上調用ToString()。 – Tim

+0

鑑於上面在我的評論中提到的錯誤,我必須問 - 發佈的代碼是否可以編譯?我不明白它會如何... – Tim

回答

3

您正在尋找實現自定義驗證。當您將自定義驗證器放在頁面上時,您的controlToValidate將成爲薪水。然後你需要定義你的ServerValidate事件。在這種情況下,您可以根據是否新手或經驗來驗證員工輸入。祝你好運。