asp.net - Pressing enter on any textbox invokes my Save button click event? -


मेरे पास एक मानक asp.net वेबफ़ॉर्म है जिसमें एकाधिक टेक्स्टबॉक्स (Autopostback = False) और एक सेव बटन। किसी भी टेक्स्ट बॉक्स में सर्वर को क्लिक करने से बचाने के लिए बटन दबाए जाने पर इंप्रेस को दबाया जा रहा है। अगर मैं कॉल स्टैक को तोड़ता हूं और देखता हूं, क्लिक ईवेंट केवल एकमात्र ईवेंट सूचीबद्ध होता है मेरे पास प्रपत्र के लिए एक डिफ़ॉल्ट बटन सेट नहीं है अगर मैं सहेजें बटन के ऊपर एक और बटन डालता हूं, तो उसे किसी पाठ बॉक्स पर दर्ज होने के किसी भी प्रेस पर लागू होने वाले क्लिक ईवेंट प्राप्त होता है।

कोई भी विचार क्यों हो रहा है, और उसे कैसे रोकना है?

यह पाठ क्षेत्रों को छोड़कर अधिकांश क्षेत्रों के लिए डिफ़ॉल्ट व्यवहार है।

यह कुंजीपटल की जांच करने के लिए फ़ॉर्म सबमिट करने से पहले आप जावास्क्रिप्ट फंक्शन कॉल कर सकते हैं।

  & lt; script type = "text / javascript" & gt; फ़ंक्शन अनुमतिसबमिशन () {वापसी! (खिड़की। घटना और खिड़की.ईवेंट.कीकोड == 13); } & Lt; / script & gt;  

फिर फ़ॉर्म सबमिट करने का एकमात्र तरीका है कि वह वास्तव में हिट सबमिट करें। हालांकि कई लोगों ने उल्लेख किया है, एक फॉर्म सबमिट करने के लिए कुंजी दर्ज करना अपेक्षित व्यवहार है, इसलिए आप फ़ील्ड पर बुनियादी सत्यापन करने के लिए फ़ंक्शन को हमेशा बदल सकते हैं, यदि सभी आवश्यक फ़ील्ड भरे गए हैं तो फॉर्म को जमा करने के लिए प्रवेश कुंजी की अनुमति दें।

  & lt; स्क्रिप्ट प्रकार = "टेक्स्ट / जावास्क्रिप्ट" & gt; फ़ंक्शन की अनुमतिसमर्थन () {वापसी! (खिड़की। घटना और खिड़की.ईवेंट.कीकोड == 13) || validateInput (); } & Lt; / script & gt;  

संपादित करें: आप इस फ़ंक्शन को अपने सबमिट बटन की OnClientClick विधि पर कॉल करेंगे। कुछ ऐसा है:

  & lt; एएसपी: बटन आईडी = "जमा करें बीटीएन" रनैट = "सर्वर" ऑन-क्लाइंटक्लिक = "वापसी अनुमतिसमर्थन ()" / & gt;  

Comments

Popular posts from this blog

c# - ListView onScroll event -

PHP - get image from byte array -

Linux Terminal Problem with Non-Canonical Terminal I/O app -