非常简单的问题。
我有一些ASP RequiredFieldValdators检查一些文本框。
开箱即用,它会在按下按钮时检查验证,基本上禁用它,除非满足所有字段。
我还有一个包含大量数据点的列表框,它将新数据加载到正在验证的文本框中。
我想确保用户在满足所有必填字段之前无法切换数据点。如何“禁用”列表框(通过验证)类似于“禁用”按钮的方式
请随时要求澄清
答案 0 :(得分: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并尝试一下。
答案 1 :(得分:0)
我只为列表框设置CauseValidation =“true”。这使我无法在当前字段无效时更改数据点
全部谢谢
答案 2 :(得分:0)
在aspx页面上的取消按钮上写入原因验证=“false”。