2010-07-12 13 views
7

हमने एएसपीनेट पर डेटा सत्यापन का उपयोग कैसे किया? दिनांक वर्तमान तिथि से अधिक नहीं सम्मिलित किया जा सकता है।दिनांक सत्यापन

उत्तर

1

CustomValidator का उपयोग आसानी से अपने मुद्दों को हल करेगा।

CustomValidator

या

आप निम्नलिखित के रूप में

var myDate=new Date(); 
myDate.setFullYear(2010,0,14); 
var today = new Date(); 

if (myDate>today) 
    { 
    alert("Today is before 14th January 2010"); 
    } 
else 
    { 
    alert("Today is after 14th January 2010"); 
    } 
2

उपयोग एक CompareValidator की तरह अपनी तिथि मान्य करने के लिए जावास्क्रिप्ट का उपयोग कर सकते हैं। अधिकांश लोग दो टेक्स्टबॉक्स में दर्ज दो मानों की तुलना करने के लिए इसका उपयोग करते हैं, लेकिन आप इसे अपने मामले में सेट मान के साथ एक दर्ज मूल्य की तुलना करने के लिए भी उपयोग कर सकते हैं।

<asp:CompareValidator id="Compare1" 
     ControlToValidate="TextBox1" 
     Type="Date" 
     runat="server"/> 

कोड में पीछे Compare1.ValueToCompare = new DateTime(...); और Compare1.Operator = ValidationCompareOperator.LessThanEqual;

इसके अलावा निर्धारित करते हैं, याद रखें: तुम हमेशा, सर्वर के साथ-साथ ग्राहक पर सत्यापित करना चाहिए क्योंकि clientside सत्यापन या बंद करने के लिए आसान दर-पारित कर दिया है । मैं सुझाव दूंगा कि आप इसके लिए Fluent validation देखें।

+2

आपके उत्तर में सुझाई गई तकनीक के साथ प्रश्न टैग करना थोड़ा कठोर है ... – cjk

+1

क्षमा करें, क्या यह कठोर माना जाता है? मैंने सोचा कि यह सहायक था। इस तरह उपयोगकर्ता आसानी से उस तकनीक पर अन्य प्रश्न ढूंढ सकते हैं। साथ ही, जो लोग उस तकनीक का उपयोग करते हैं वे इस प्रश्न को ढूंढ सकते हैं और सहायता प्रदान कर सकते हैं। मैंने सोचा कि मैं सहायक था। क्या एक समुदाय पोस्ट है जिसे कठोर माना जाता है? अगर टैग्स अन्य टिप्पणियों को @ सीके की टिप्पणी को एक महान टिप्पणी के रूप में चिह्नित करते हैं तो टैग को हटाने में मुझे खुशी है। शायद अपनी खुद की टिप्पणी जोड़ने के बजाय ऐसा करने के लिए बेहतर है क्योंकि यह इस प्रश्न के विषय से दूर होगा। –

1

जावास्क्रिप्ट समाधान में,

बजे सेट करने के लिए सुनिश्चित करें, मिनट, 0 सेकेंड, और मिलीसेकेंड, तुम बस (यानी दिन, महीने और वर्ष) दिनांक तुलना करना चाहते हैं। समारोह के रूप में निम्नानुसार ऊपर उल्लेख किया है हासिल करने के लिए,

function f_tcalResetTime (d_date) { 
    d_date.setHours(0); 
    d_date.setMinutes(0); 
    d_date.setSeconds(0); 
    d_date.setMilliseconds(0); 
    return d_date; 
} 

आप तारीख, जावास्क्रिप्ट वास्तव में पर्दे के पीछे date.valueOf समारोह है, जो मिलीसेकंड आधी रात के बाद से पारित कर दिया 1 जनवरी का नंबर प्रदान करता है कहते हैं, की तुलना 1970

0

अच्छी तारीख दोस्त। कई विकल्प उपलब्ध हैं। आप या तो एएसपीनेट के कस्टम वैलिडेटर कंट्रोल, जावास्क्रिप्ट इत्यादि का उपयोग कर सकते हैं। एक बेहतर विकल्प एजेक्स कंट्रोल टूलकिट के मुखौटा संपादन एक्स्टेंडर का उपयोग मास्क किए गए एडिट वैलिडेटर के साथ करना होगा। आप श्रेणी, कस्टम मास्क (yyyy/MM/dd) और उसके साथ एक खाली फ़ील्ड संदेश भी निर्दिष्ट कर सकते हैं।

बस सुनिश्चित करें कि आप अपनी वेबसाइट की संस्कृति को सही तरीके से सेट करें ताकि आप तिथियों को सही तरीके से सत्यापित कर सकें। http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/MaskedEdit/MaskedEdit.aspx

चीयर्स।

<ajaxToolkit:MaskedEditValidator 
ControlExtender="MaskedEditExtender2" 
ControlToValidate="TextBox2" 
IsValidEmpty="False" 
MaximumValue="12000" 
EmptyValueMessage="Number is required" 
InvalidValueMessage="Number is invalid" 
MaximumValueMessage="Number > 12000" 
MinimumValueMessage="Number < -100" 
MinimumValue="-100" 
EmptyValueBlurredText="*" 
InvalidValueBlurredMessage="*" 
MaximumValueBlurredMessage="*" 
MinimumValueBlurredText="*" 
Display="Dynamic" 
TooltipMessage="Input a number: -100 up to 12.000"/> 
संबंधित मुद्दे