मेरे पास एक पृष्ठ है, जहां मैं प्रत्येक सत्यापन संदेश को लॉग करना चाहता हूं जिसे उपयोगकर्ता संबद्ध क्षेत्र की आवश्यकताओं को पूरा करने में विफल रहा।असफल वैधताओं को खोजें asp.net
समस्या यह है कि मेरी पोस्टबैक/बटन क्लिक कभी नहीं होता है (शायद क्लाइंटसाइड सत्यापन के कारण), और इसलिए उपयोगकर्ता को वास्तव में हर क्षेत्र को सही (कोई सत्यापन त्रुटियां नहीं) होने से पहले लॉगिंग कभी नहीं होती है।
बटन क्लिक करें घटना विधि:
protected void btnNext_Click(object sender, EventArgs e)
{
Page.Validate();
if(Page.IsValid)
{
//code
}
else
{
foreach (IValidator validator in Validators)
{
if (!validator.IsValid)
{
PageValidatorErrors error = new PageValidatorErrors
{
WebsiteID = AppState.WebsiteID,
Page = Request.Url.AbsolutePath,
URL = Request.Url.ToString(),
UserIP = Tools.GetIP(),
ErrorMessage = validator.ErrorMessage,
CreatedDate = DateTime.Now
};
pageValidatorErrorsRep.insert(error);
}
}
}
}
कोई भी विचार, मैं कैसे संदेशों इन लॉग ऑन कर सकता है?
संपादित करें:
<script type="text/javascript">
function validatePage()
{
if (window.Page_IsValid != true)
{
//Page_Validators is an array of validation controls in the page.
if (window.Page_Validators != undefined && window.Page_Validators != null)
{
//Looping through the whole validation collection.
for (var i = 0; i < window.Page_Validators.length; i++)
{
window.ValidatorEnable(window.Page_Validators[i]);
//if condition to check whether the validation was successfull or not.
if (!window.Page_Validators[i].isvalid)
{
var errMsg = window.Page_Validators[i].getAttribute('ErrorMessage');
alert(errMsg);
}
}
}
}
}
</script>
ओह, मैं देख रहा हूँ, आप कैसे ग्राहक में हुक करने पूछ रहे हैं साइड जावास्क्रिप्ट कि एएसपीनेट वैधकर्ता उत्सर्जित करते हैं। – MatthewMartin
सत्यापनकर्ता लूप नमूना के लिए धन्यवाद, मैं बस इसे अपने आप लिखने वाला था :) – rdmptn