2016-06-02 7 views
6

क्या कोई मुझे बता सकता है कि बटन "टैग" नामक फ़ंक्शन को निम्न टैग में एक प्रकार की त्रुटि क्यों बनाता है जैसे ही बटन टैग टैग से घिरा हुआ होता है। एकजावास्क्रिप्ट फ़ंक्शन "एक्शन" कहा जाता है

<html> 
<head> 
    <script type="text/javascript"> 
     function action() { 
      alert('test'); 
     } 
    </script> 
</head> 
<body> 
    <form> 
     <input type="button" value="click" onClick="action();"> 
    </form> 
</body> 
</html> 
+1

_ मुझे आश्चर्य है कि इस प्रश्न_ – Rayon

+0

के लिए कोई डुप्लिकेट नहीं है, इस तरह इनलाइन ईवेंट हैंडलर काम करते हैं। मेरा उत्तर यहां देखें: http://stackoverflow.com/questions/6941483/onclick-vs-event-handler/21975639#21975639 –

+0

@ रेयान: इससे पहले पूछा गया है, लेकिन मैं कल्पना कर सकता हूं कि प्रश्न का नाम देना मुश्किल है या यह जानने के बिना क्या देखना है कि समस्या क्या है। मेरा मतलब है, इस सवाल का शीर्षक समस्या का बहुत संकेतक नहीं है। –

उत्तर

5

प्रपत्र के अंदर, action है: मुझे लगता है इस फार्म की कार्रवाई विशेषता के साथ एक अजीब संघर्ष की ओर जाता है, लेकिन मैं क्यों यह इस दायरे ("कार्रवाई" किसी अन्य तरीके से परिभाषित नहीं है) में होता है फॉर्म कार्रवाई के लिए स्ट्रिंग संदर्भ। यदि आप अपना ऑनक्लिक alert(action) पर बदलते हैं तो आपको फॉर्म की क्रिया मिल जाएगी (जो आपके विशिष्ट रूप के लिए एक खाली स्ट्रिंग होगी)।

इसी तरह, form एक फॉर्म का संदर्भ होगा, और method में फॉर्म विधि होगी, यदि आप उन्हें फॉर्म के भीतर उपयोग करते हैं। window.action अभी भी आपके फ़ंक्शन का संदर्भ देगा।

+0

@ रेयान: वास्तव में? [क्रोम में नहीं, मेरे प्रयोगों में] (https://jsfiddle.net/hgczsppr/) –

+0

ओह .. तुम सही हो! मैंने फिडल में 'लोड टाइप' नहीं बदला :( – Rayon

+0

बेवकूफ मुझे नहीं देखा कि कॉल समस्या है, न कि फ़ंक्शन स्वयं। अब सब कुछ समझ में आता है। – needfulthing

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