2012-01-29 11 views
6
document.getElementById("test").value 

document.getElementById("test").innerHTML 

पहले पता और इसका यह मतलब है दूसरे पते पर संग्रहीत मूल्य मतलब है? साथ ही, value संपत्ति पर मुझे दस्तावेज़ कहां मिल सकता है?क्या document.getElementById के बीच का अंतर ("परीक्षण")। मूल्य और document.getElementById ("परीक्षण") है। InnerHTML

+0

[w3schools साइट] (http://www.w3schools.com/) का एक अच्छा [HTML DOM पर संदर्भ] है (http://www.w3schools.com/jsref/default.asp)। –

+0

@BrianRogers - कृपया w3schools की अनुशंसा नहीं करें। क्यों के लिए http://w3fools.com देखें। – Oded

+0

@ ओडेड - मैंने अपने एचटीएमएल डोम संदर्भ को काफी उपयोगी पाया है। यदि आप साइट के बारे में बहुत दृढ़ता से महसूस करते हैं, तो HTML DOM के वैकल्पिक संदर्भ की अनुशंसा करने के लिए यह अधिक रचनात्मक होगा। –

उत्तर

10

.value आप एक ऐसा फ़ॉर्म तत्व (input, select, textarea) की वर्तमान में निर्धारित मूल्य देता है, जबकि .innerHTML तत्व युक्त डीओएम नोड्स के आधार पर एक HTML स्ट्रिंग बनाता है।

एक साधारण उदाहरण के लिए, JS Fiddle demo पर जाएं, और input में एक नया मान दर्ज करें और फिर इनपुट से बाहर निकलें।

परीक्षण निम्न JavaScript का उपयोग करता है:

document.getElementById('input').onchange = function(){ 
    alert('innerHTML: ' + document.getElementById('input').innerHTML + '; whereas value: ' + document.getElementById('input').value); 
}; 

(ऊपर पाठ नीचे, अद्यतन एक टिप्पणी am not i am द्वारा छोड़ा निम्नलिखित, टिप्पणी में।)

+2

यदि आप इसके बजाय कहेंगे कि * "' .innerHTML' डीओएम नोड्स के आधार पर एक HTML स्ट्रिंग बनाता है जिसमें तत्व "* (या कुछ समान) होता है क्योंकि DOM नोड में सख्ती से कोई" HTML "सामग्री नहीं होती है। –

+1

@amnotiam, सहमत हुए। मेरा पाठ अपडेट किया गया, और स्पष्टीकरण के लिए धन्यवाद। =) –

3

कुछ HTML तत्वों एक विशेषता "value", इस तरह के <input/> के रूप में कुछ अन्य लोगों के पास नहीं है की है।

यदि आप उन्हें संशोधित करना चाहते हैं, तो आप DOM विशेषता का उपयोग कर सकते हैं (Javascript के साथ उपयोग किया गया) innerHTML (यदि उनके पास कोई है)। इस विशेषता को एक तत्व की सामग्री का प्रतिनिधित्व करता है, तो यह इस तरह के रूप में <div/> घोंसला अन्य तत्व को स्वीकार करने तत्वों के लिए इस्तेमाल किया जा सकता,

3

HTML में कई तत्वों एक आईडी हो सकता है, इसलिए प्रत्येक के लिए value की परिभाषा बदल जाएगी।

value अनिवार्य रूप से वह तत्व मान के रूप में समझ जाएगा। उदाहरण के लिए, <input type=text> आपको टेक्स्ट अंदर देगा।

innerHTML एचटीएमएल कोड अंदर होगा। उदाहरण के लिए, <TR> में उसका बच्चा TD होगा, साथ ही इसमें और भी कुछ भी होगा।

value और innerHTML (आमतौर पर) को पढ़ा जा सकता है, साथ ही साथ पढ़ा जा सकता है।

1

यह करना है कि कुछ टैग उनके गुणों के आधार पर कैसे काम करते हैं जहां अन्य उद्घाटन और समापन टैग के बीच पाठ पर काम करते हैं।

.value टैग की विशेषता value विशेषता के लिए जो भी मान निर्धारित किया गया है उसे पुनर्प्राप्त करता है। .innerHTML उद्घाटन और समापन टैग के बीच जो कुछ भी है, उसे पुनर्प्राप्त करता है।

उदाहरण है अगर एचटीएमएल टैग
<input type="text" value="Enter name here" id="user_name" />
था और आप जावास्क्रिप्ट
var name = document.getElementById('user_name').value
इस्तेमाल किया एक चर name घोषित करने और यह मूल्य (यह मानते हुए उपयोगकर्ता इसे बदल नहीं किया "नाम यहां दर्ज करें" के लिए देना होगा)।दूसरी ओर आप HTML की तरह
<div id="abc">blah blah</div>
तो आप
var text = document.getElementById('abc')
का प्रयोग करेंगे और उस चर text करने के लिए "blah blah" स्थापित करेगा है।

0
document.getElementByid('test').value 

टेक्स्ट फ़ील्ड में मूल्य देने के लिए उपयोग किया जाता है।

<input type="text" id="test" name="test"> 

अब यह इस टेक्स्ट फ़ील्ड में मूल्य डालता है।

जबकि document.getElementByid('test').innerHTML निर्दिष्ट क्षेत्र में मूल्य देने के लिए उपयोग किया जाता है।

<div id="test"> 
</div> 

अब यह div क्षेत्र के भीतर मान मुद्रित करता है।

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