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