Validation - How To Extend A CompareValidator So Can Check
Jun 12, 2010How to extend a compareValidator so i can check, if user has written some text in ControlToValidate then he must write some text in ControlToCompare too.
View 1 RepliesHow to extend a compareValidator so i can check, if user has written some text in ControlToValidate then he must write some text in ControlToCompare too.
View 1 RepliesI am using ASP.NET's server-side validation. In the page_load event I'm calling Page.Validate(), and if Page.IsValid is not true I'm then polling the controls to figure out which ones are not valid, and then determining what actions to take.It would be much easier if each control would raise an event as validation fails, allowing me to take action for that particular control. I'm very much a naive programmer when it comes to validation, but is there a way to extend these controls so that a validation error raises an event?
View 1 RepliesI have 2 text boxes in which I am comparing the numeric value of one to the other. At first it works fine and I get the appropriate error message. But eventually as i plug in different numbers although I should be getting an error message I stop getting one. Is there something going on behind the scenes to fire the error message than I am unaware of. Also the error message fires some time when the value is less than the value of another control and equal to the value. I only want it to fire when it is less than the value of the other control.
View 7 RepliesWhat is the best way to debug a CompareValidator that always fails the validation? Is there any way to see what the values are that it's comparing to maybe get a clue as to what's going wrong?
View 2 RepliesI have a salary TextBox and an associated CompareValidator, which is setup as follows:
<asp:CompareValidator ... Operator="DataTypeCheck" Type="Currency" />
I fill the TextBox with a formatted string out of the database:
txtSalary.Text = myObject.Salary.ToString("N2")
When a user accesses the page using a French culture (such as fr-ca), the ToString method will put 80 000,00 in the textbox, which is fine.However, any number with a space in it causes the validator to fail, which is not fine. Is there any way to make the CompareValidator work properly with non-US formatted numbers?
I am busy writing my own custom attribute for my action method called MyAuthorizeAttribute, I am still busy writing the code, here is my partial code:
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false)]
public class MyAuthorizeAttribute : AuthorizeAttribute
{
public new Role Roles;
public override void OnAuthorization(AuthorizationContext filterContext)
{
base.OnAuthorization(filterContext);
if (Roles != 0) // Did it this way to see what the value of Roles was
return;
// Here I am going to get a list of user roles
// I'm doing my own database calls
filterContext.Result = new HttpUnauthorizedResult();
}
}
Here is my Role enum:
public enum Role
{
Administrator = 1,
SuperAdministrator = 2
}
My action method:
[MyAuthorize(Roles = Role.Administrator|Role.SuperAdministrator)]
public ActionResult Create()
{
return View();
}
The reason why I did not use Roles = "Administrator,SuperAdministrator" was because the roles are hard-coded. I don't want to have a 100 places to change if the role name changes.
Given my method, when it gets to if (Roles != 0) then Roles total value is 3, how would I check to see if these 2 roles is in the list of user roles for a specific user?
Am I doing it correct here? If not how would I otherwise implement this? It doesn't have to be the way that I did it in.
I have asp.net form having 4 check boxes. not check box list. these 4 check boxes having the ValidationGroup property with same name say "chkValied". I have added Custom Validator there. now want to check at least on check box should be check out of these.
View 3 RepliesHow to validate check box/ check box list in Model?
View 1 RepliesI need to perform a validation to check whether a TextBox value is empty on Dropown list selected Index change using validation controls in asp.net
View 1 RepliesIn my table in the DB, I have these data types for some of its columns..
Address1 nvarchar(200)
Address2 nvarchar(200)
City nvarchar(200)
State nvarchar(200)
Now in my aspx page I need to display this data in text boxes. What should be the max length for the text boxes for Address1 text box, Address2 textbox, City's text box and state's according to what I have in my DB ?
How do I apply the max length validation check on these text boxes in my page ?
An error occur something like this "Page.IsValid cannot be called before validation has taken place. It should be queried in the event handler for a control that has CausesValidation=True and initiated the postback, or after a call to Page.Validate. I make some work around but it didn't work
Here's my code in my Page Load event that an error occur
Code:
if (Request.QueryString["id"] != null)
{
txtID.Text = clsFunction.ReplaceString(Request.QueryString["id"].ToString());
if (!Page.IsValid)
{
Page.Validate();
cmdProceed_Click(sender, e);
}
}
In my page, I have this two validation group so if I am going to re-structure my above code like this
Code:
protected void Page_Load(object sender, EventArgs e)
{
if (Request.QueryString["id"] != null)
{
txtID.Text = clsFunction.ReplaceString(Request.QueryString["id"].ToString());
Page.Validate();
if (Page.IsValid)
{
cmdProceed_Click(sender, e);
}
}
}
I will not encounter the above mentioned error however, my second validation group trigger and the cmdProceed_Click is not executed.
Requirment is: while enterening the value you should know that this values is already we have used in data base for that textbox field.Please give code in .aspx and .aspx.cs with database if any
View 4 RepliesI have a form with x fields on - its a signup form on a web page. I use standard validation controls which I use for validating on both client and server side, however I have an additional requirement I don't think is covered by the standard controls. When a user enters an email address and press enter, I validate that the address is not already in the database, by calling a stored procedure. This works fine but it would be great to validate it client side as with all the other entry fields.
I wouldn't know where to start with javascript so I have come up with the following solution. I have put a ontextchanged event on the email textbox and set to autopostback. When the user navigates away from the textbox validation is called and this seems to work ok. My question is have I missed something, and is there an easier soluyion using validation controls or is this an appropriate solution to the problem?
how to check the Date of birth in jquery validation or in Jquery....
I know how to check with the Regex but I want to do like real DOB checking ...
User should not enter today's or future date and must be greater than 1/1/1990...
In my application the user uploads three files ( Resume, Cover Letter, Selection Creteria).
I want users not to upload more then 4 MB files, so In my web.confing file I have allowed max of 5 MB. <httpRuntime maxRequestLength="5000"/>. I did this so that I can validate the file and give user a message that they are trying to upload more then 4 MB file.
It all works fine if the user is only uploading resume. But if the user uploads all three files of size 4MB then my validation does not work and it goes to connection time out.
How can i handle the validation to check the file size of all 3 files?
I am CustomValidator to vlidate some data.There are 3 static buttons and some dynamically creating buttons in that page. I just need to check validation when I press the save button.For all other button click I do not want to call the validation. How do I tell that in the Validation function?
<asp:CustomValidator ID="CustomValidator1" runat="server"
ErrorMessage="CustomValidator" ControlToValidate="DropDownList1"
ClientValidationFunction="MyCustomValidation" ></asp:CustomValidator>
function MyCustomValidation(objSource, objArgs)
{
/Proceed if the control pressed is cmdSave button.
var Specialty = document.getElementById("DropDownList1").options[document.getElementById("DropDownList1").selectedIndex].text;
if (Specialty == "Select an option")
{
objArgs.IsValid = false;
}
else
{
objArgs.IsValid = true;
}
}
I have a web form with about 20 fields all validated, rather than use the validation summary control.
I would like a one line alert at the foot of the form that says something along the lines of "errors were found check the fields highlighted with a *" rather than an explanation for each field that has failed validation.
Seem simple enough in theory but i cant work it out.
Is there a line of VB.net code i could use to determine if validation has failed on one or more of my validators and maybe show a label with the "errors were found please check the fields highlighted with a *" message?
I have the following code. What's happening is, on postback, the required attribute for sequence will fire. If it passed, the range check is skipped completely. If it fails, it never gets to the range check either. Have I coded something wrong?
using System.ComponentModel.DataAnnotations;namespace Venue.Models{ [MetadataType(typeof(CategoryMetadata))] public partial class Category { } public class CategoryMetadata { [Required(ErrorMessageResourceType = typeof(Resources.Locale), ErrorMessageResourceName = "sequence_required")] [Range(0, 9999, ErrorMessageResourceType = typeof(Resources.Locale), ErrorMessageResourceName = "sequence_invalid")] public int Sequence { get; set; } [Required(ErrorMessageResourceType = typeof(Resources.Locale), ErrorMessageResourceName = "title_required")] [StringLength(256, ErrorMessageResourceType = typeof(Resources.Locale), ErrorMessageResourceName = "title_invalid")] public string Title { get; set; } }}
We are developing an application where we have a Form to fill by users. Here is the scenario for some fields:Name : Does not contain numbers like 123 but it can be alpha-numeric like mynangal123 but does not contain special charactersOB : Does contain specific formats like mm.dd.yyyy or dd/mm/yyy or yyyy/mm/dd etc. doesn't contain alphabetsTAXID : Can be Numeric but not numbers like it can be "123" but not 123 also it can be T-125Now, as per requirement we have to validate or prompt the user for specific input if he/she did not enter the specific entry. Like if in name User enter 123456 then there should be a messagebox to warn "please enter a valid name"Restrictions : We have a option of Javascript but its not recommendable in most of scenario so, we need to create a custom validators or something else which will solve our problem.
View 1 RepliesI am using tabstrip control. each tab page have set of controls and each have different validation group. I have a common button to insert / update the tab datas. Now when a user entered the information in the first tab and press insert button, i need to validate second page also.
So i explicitely called Page.validate() metyhod in the insert button to ensure all the validation passed or not. All working fine. But i need to focus the second tab when user finished first page and not finished ssecond page. How can i focus the tab. I mean any way to check which validation group fails?
Is there a validation expression or any other way to check a birthdate entered to ensure the date entered makes the person "at least xx years of age" as of the current date? We have a registration form that asks the birthdate and we need to have a date validation that 'error messages' the user if they are under the minimum age.
View 5 RepliesI am working on ASP.NET3.5 platform. I have used a file upload control and a asp button to upload a file. Whenever i try to upload a file which contain special characterlike (file#&%.txt) it show crash and give the messeage "Server Error in 'myapplication' Application." A potentially dangerous Request.Files value was detected from the client (filename="...New Text &#.txt"). Description: Request Validation has detected a potentially dangerous client input value, and processing of the request has been aborted. This value may indicate an attempt to compromise the security of your application, such as a cross-site scripting attack. You can disable request validation by setting validateRequest=false in the Page directive or in the configuration section. However, it is strongly recommended that your application explicitly check all inputs in this case.
Exception Details: System.Web.HttpRequestValidationException: A potentially dangerous Request.Files value was detected from the client (filename="...New Text &#.txt"). Source Error: An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. how can i prevent this crash using javascript at client side?
I ve two aspCalendar controls on the website. I would like to perform validation (date from Calendar2 should be greater then date from Calendar 1).
<asp:CompareValidator ID="CompareValidator1" runat="server"
ErrorMessage="CompareValidator"
ControlToValidate="Calendar2"[cod]....
There are a lot examples of validation but with ControlToValidate as textBox or label, What about more complex Controls, is there any way I can tell which property from that control has to be used?
Maybe Client side validation ? But how to do this ?
I tried to compare between 2 datetimes (dd/MM/yyyy hh:mm:ss) but not able to. It allows me Type="date" and not datetime.
[Code]....
this is my aspx.cs code
[Code]....
on button click i used to validate my dropdownlist i set validation group also.. but its not working why...