2010-08-26 18 views
5

सबमिट करने के लिए एक फॉर्म प्राप्त करने में समस्या हो रही है जब सबमिट बटन का नाम विशेषता ठीक से "सबमिट" होती है।फॉर्म सबमिट बटन सबमिट नहीं होगा जब बटन का नाम "सबमिट"

<input onclick="checkForm(document.form_29) && document.form_29.submit();" value="Submit" name="submit" type="button">

ध्यान दें कि हम "submit" का एक मानक इनपुट प्रकार का उपयोग नहीं कर रहे हैं, बल्कि जावास्क्रिप्ट के साथ "बटन" के एक इनपुट प्रकार प्रपत्र प्रस्तुत करने के लिए इस्तेमाल किया जा रहा:

यहाँ कोड है एक सत्यापन स्क्रिप्ट (चेकफॉर्म) के बाद सच हो गया है।

अजीब बात यह है कि इस करता है, तो और नाम विशेषता है ही अगर "सबमिट करें" काम नहीं करेगा है। समस्या केस-संवेदी है, तो निम्न (और कोई नाम विशेषता सहित किसी भी अन्य नामकरण,) काम करेगा:

<input onclick="checkForm(document.form_29) && document.form_29.submit();" value="Submit" name="Submit" type="button">

मैं एक आरक्षित नाम से कुछ उल्लेख के लिए W3C चश्मा से अधिक की तलाश में गया है, लेकिन मुझे कुछ नहीं मिला। मुझे संदेह है कि मैं यहां कुछ वास्तव में स्पष्ट दिख रहा हूं, इसलिए मुझे आशा है कि आप में से कुछ वहां कुछ ऐसा देख सकें जो मैं नहीं कर सकता।

किसी भी मदद के लिए धन्यवाद।

+0

'type =" submit "के साथ जाने के लिए बेहतर" –

+0

हाँ - मैं चाहूंगा, लेकिन मैं नहीं कर सकता - मैं कारणों में नहीं जाऊंगा - यह एक लंबी कहानी है, और यह निर्णय नहीं है मैं बना सकता हूँ। –

उत्तर

14

आप में समस्या हो रही मुद्दों क्योंकि name जा रहा है submit कि <form> के लिए form.submit() समारोह संदर्भ अधिभावी है, बजाय form_29.submit कि बटन, बल्कि डोम submit() समारोह से संदर्भित करता है।

+0

डी ओह! धन्यवाद! बहुत यकीन है कि जवाब है ... –

+7

हां, यह मूल रूप से निर्णय लेने के लिए नेटस्केप की गलती है कि फ़ॉर्म फ़ील्ड को 'form.elements' संग्रह के बजाय 'फॉर्म' ऑब्जेक्ट पर नामित गुणों के रूप में प्रतिबिंबित किया जाना चाहिए, जहां आप चाहते हैं उन्हें उम्मीद है। यह, साथ ही 'दस्तावेज़' पर नामित तत्वों का प्रतिबिंब (और, आईई के भी बदतर मामले में, 'विंडो') ने अंतहीन समस्याओं का कारण बना दिया है। हम अब इस गलत गलत डिजाइन से कभी मुक्त नहीं हो सकते हैं। उनकी वसा खराब, '' चेहरे। – bobince

संबंधित मुद्दे