Asp.net 使用必需的字段验证器禁用ListBox

Asp.net 使用必需的字段验证器禁用ListBox,asp.net,validation,requiredfieldvalidator,Asp.net,Validation,Requiredfieldvalidator,这个问题很简单 我有一些ASP RequiredFieldValdator检查一些文本框 开箱即用,当按下按钮时,它检查验证,基本上禁用它,除非满足所有字段 我还有一个包含大量数据点的列表框,这些数据点将新数据加载到正在验证的文本框中 我想确保在满足所有必填字段之前,用户不能切换数据点。如何“禁用”列表框(通过验证),类似于按钮的“禁用”方式 请随时要求澄清asp.net验证程序不提供此类功能来有条件地禁用控件。您需要编写自己的验证器(非常困难,或者请参阅)。最好在文本框的模糊事件处理程序中处理

这个问题很简单

我有一些ASP RequiredFieldValdator检查一些文本框

开箱即用,当按下按钮时,它检查验证,基本上禁用它,除非满足所有字段

我还有一个包含大量数据点的列表框,这些数据点将新数据加载到正在验证的文本框中

我想确保在满足所有必填字段之前,用户不能切换数据点。如何“禁用”列表框(通过验证),类似于按钮的“禁用”方式


请随时要求澄清

asp.net验证程序不提供此类功能来有条件地禁用控件。您需要编写自己的验证器(非常困难,或者请参阅)。最好在文本框的模糊事件处理程序中处理它

 <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>

$(文档).ready(函数(){
$(“#”).blur(函数(){
$(“#”)属性(“禁用”、“禁用”);
ValidateInputs();//您将验证此函数中的输入
});
});
函数ValidateInputs(){
//…验证。。。。。。
如果(验证正常){
$(“#”)attr(“已禁用”,即“);
}
}

PS:-我假设您正在使用jQuery,如果没有,请抽点时间访问并尝试一下。

我刚刚为列表框设置了CauseValidation=“true”。这使我无法在当前字段无效时更改数据点

感谢所有人

在apsx页面的取消按钮上写入CauseValidation=“false”