मैं जावा स्क्रिप्ट का सीखने वाला हूं और इस कोड को चलाने की कोशिश कर रहा था जहां उपयोगकर्ता इनपुट टेक्स्ट में कोई भी मान दर्ज करता है और फिर इनपुट डेटा "p" टैग में प्रिंट हो जाता है, लेकिन जब मैं डीबगर का उपयोग यह देखने के लिए किया जाता है कि कोड कहां गलत हुआ, यह मुझे निम्न त्रुटि के साथ पॉप आउट करता है:

ध्यान में न आया लेखन त्रुटि: अपरिभाषित की संपत्ति 'मान' पढ़ा नहीं जा सकता

कोड:

 <!DOCTYPE html>
     <html>
     <head>
    <script>
     function myFunction() 
     {
       var a = document.getElementById("txt_1")[0].value;
       document.getElementById("demo").innerHTML = a;
     }
    </script>
    </head>
    <body>
    <form>
    <input type="text" id="txt_1" name="txt_1">
    <input type="button" onclick="myFunction()" value="Click me">
    </form>
    <p id="demo"></p>
    </body>
    </html>
1
Mehul Chachada 17 अगस्त 2016, 16:49

3 जवाब

सबसे बढ़िया उत्तर

getElementById() एकल तत्व लौटाएगा। इसलिए आपको [0] को अनुक्रमित करने की आवश्यकता नहीं है। [0] को getElementById("txt_1")[0] से हटा दें।

 <html>
     <head>
    <script>
     function myFunction() 
     {
       var a = document.getElementById("txt_1").value;
       document.getElementById("demo").innerHTML = a;
     }
    </script>
    </head>
    <body>
    <form>
    <input type="text" id="txt_1" name="txt_1">
    <input type="button" onclick="myFunction()" value="Click me">
    </form>
    <p id="demo"></p>
    </body>
    </html>
4
Suren Srapyan 17 अगस्त 2016, 16:57

फ़ंक्शन document.getElementById("txt_1") तत्व लौटाता है, न कि एक सरणी जिसमें तत्व पहले आइटम के रूप में है, इसलिए [0] को हटा दें:

var a = document.getElementById("txt_1").value;
0
Spencer Wieczorek 17 अगस्त 2016, 16:51

Document.getElementById() एक एकल तत्व देता है। पहले तत्व ([0]) का चयन करने की कोई आवश्यकता नहीं है (आप नहीं कर सकते), केवल एक ही होगा।

var a = document.getElementById("txt_1").value;
0
baao 17 अगस्त 2016, 16:51