ASP.NET - 做一个文本框必需的,如果一个复选框被选中 [英] ASP.NET - Make a Textbox Required IF a Checkbox is checked
问题描述
请告诉我做,如果复选框被选中所需的文本框的最佳方法是什么?
Whats the best way to 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控制:
Given the following ASP controls:
<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>
这是所有有给它。您还需要添加下面的code到你的页面加载事件,因此,如果用户已禁用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
这篇关于ASP.NET - 做一个文本框必需的,如果一个复选框被选中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!