मैं जावा स्क्रिप्ट का सीखने वाला हूं और इस कोड को चलाने की कोशिश कर रहा था जहां उपयोगकर्ता इनपुट टेक्स्ट में कोई भी मान दर्ज करता है और फिर इनपुट डेटा "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>
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>
फ़ंक्शन document.getElementById("txt_1")
तत्व लौटाता है, न कि एक सरणी जिसमें तत्व पहले आइटम के रूप में है, इसलिए [0]
को हटा दें:
var a = document.getElementById("txt_1").value;
Document.getElementById() एक एकल तत्व देता है। पहले तत्व ([0]
) का चयन करने की कोई आवश्यकता नहीं है (आप नहीं कर सकते), केवल एक ही होगा।
var a = document.getElementById("txt_1").value;