Solution1
//ASPX <asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:TextBox ID="txt1" runat="server" OnTextChanged="TextBoxOnTextChanged"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvTxt1" runat="server" ControlToValidate="txt1" .....></<asp:RequiredFieldValidator>
<asp:TextBox ID="txt2" runat="server"OnTextChanged="TextBoxOnTextChanged"></asp:TextBox> <asp:RequiredFieldValidator ID="rfvTxt2" runat="server" ControlToValidate="txt2" .....></<asp:RequiredFieldValidator>
<ContentTemplate> </asp:UpdatePanel>
//CS protected void TextBoxOnTextChanged(object sender, EventArgs e) { string SrcTxtId = ((TextBox)sender).ID; switch(SrcTxtId) { case "txt1": rfvTxt2.Enabled = false; case "txt2": rfvTxt1.Enabled = false; } } //Note: This way by default both the validators will be active but as soon as u enter something in textbox1..
Solution2
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript">
function ValidateTextBoxes() {
var TextBox1 = document.getElementById('<%= TextBox1.ClientID %>');
var TextBox2 = document.getElementById('<%= TextBox2.ClientID %>');
if (TextBox1.value == "" && TextBox2.value == "") {
alert('Please enter atleast one value');
return false;
}
if (TextBox1.value != "" && TextBox2.value != "") {
alert('Please enter only one value');
return false;
}
return true;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<br />
<asp:Button ID="Button1" runat="server" Text="Save" OnClick="Button1_Click" OnClientClick=" return ValidateTextBoxes();" />
</form>
</body>
</html>
No comments:
Post a Comment