如果选中复选框,如何使文本框成为必需 [英] How to make a Textbox required IF a Checkbox is checked

查看:102
本文介绍了如果选中复选框,如何使文本框成为必需的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果选中了复选框,如何使文本框成为必需?

How can I make a textbox required if a checkbox is checked?

我认为我可以编写自定义验证程序,但我希望避免发回完整文章检查验证是否可行...我本想在这种情况下AJAX内置了一些功能,但我一直找不到。我想直接使用JavaScript也是一种解决方案,但是如果那是最好的方法,我可以抢先一步。

I figure I could write a custom validator, but I was hoping to avoid a full post back to check the validation if possible... I was thinking AJAX had something built in for this scenario, but I've been unable to find it. I'm thinking straight JavaScript would also be a solution, but I could use a head start if that's the best approach.

推荐答案

用JavaScript处理这个问题并不是很困难。

The JavaScript to handle this isn't very difficult.

给出以下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" />

添加以下JavaScript函数:

Add the following JavaScript function:

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

这就是全部。您还希望将以下代码添加到Page Load事件中,以便如果用户禁用了JavaScript,则仍然可以正确打开或关闭所需的字段验证器:

That's all there is to it. You will also want to add the following code to your Page Load event, so that if the user has JavaScript disabled, your required field validator is still turned on or off properly:

rfvSubject.Enabled = chkSubjectRequired.Checked

这篇关于如果选中复选框,如何使文本框成为必需的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆