如果选中复选框,如何制作文本框

Alb*_*ert 17 .net asp.net validation

如果选中复选框,如何才能创建文本框?

我想我可以写一个自定义验证器,但我希望避免完整的帖子回来检查验证,如果可能的话...我认为AJAX已经内置了这个场景,但我一直无法找到它.我在想直接JavaScript也是一个解决方案,但如果这是最好的方法,我可以先行一步.

Jas*_*kan 20

处理这个问题的JavaScript并不是很困难.

鉴于以下ASP控件:

<asp:TextBox ID="txtSubject" runat="server" />
<asp:CheckBox ID="chkSubjectRequired" runat="server" OnClick="updateValidator();" />
<asp:RequiredFieldValidator ID="rfvSubject" ControlToValidate="txtSubject" ErrorMessage="You must enter a subject." runat="server" />
Run Code Online (Sandbox Code Playgroud)

添加以下JavaScript函数:

<script language="javascript" type="text/javascript">
    function updateValidator() {
        var enableValidator = !event.srcElement.status;
        var rfvSubject = document.getElementById('rfvSubject');
        ValidatorEnable(rfvSubject, enableValidator);
    }
</script>
Run Code Online (Sandbox Code Playgroud)

这里的所有都是它的.您还需要将以下代码添加到页面加载事件中,以便在用户禁用JavaScript时,仍然可以正确打开或关闭所需的字段验证程序:

rfvSubject.Enabled = chkSubjectRequired.Checked
Run Code Online (Sandbox Code Playgroud)