2010-03-17 21 views
16
<ul class="leftbutton" > 
      <li id="menu-selected">Sample 1</li> 
      <li>Sample 2</li> 
      <li>Sample 3</li> 
      <li>Sample 4</li> 
      <li>Sample 5</li> 
    </ul> 

मैं ली आइटम का टेक्स्ट प्राप्त करना चाहता हूं जो आईडी = "मेनू-चयनित" है।
अभी मैं की तरह
ली तत्व का पाठ प्राप्त करें

document.getElementById('menu_selected').childNodes.item(0).nodeValue 

वहाँ एक ही कर के किसी भी सरल तरीका है कुछ कर रहा हूँ?

+1

करने के लिए 6 सवाल पूछा। स्वीकार नहीं किया कोई नहीं। कोई विशेष कारण? –

+0

@nvl ओह, मैं स्टैक ओवरफ्लो के लिए बहुत नया हूं, इसके बाद यहां स्वीकार करूंगा :) – Deepak

+0

:)। लेकिन मैं यह नहीं कह रहा हूं कि हर उत्तर स्वीकार करें, केवल तभी स्वीकार करें जब आप संतुष्ट हों (और एमपी जवाब उत्तरदायी होंगे :) –

उत्तर

16

आपके मामले में:

document.getElementById('menu_selected').innerHTML 
0

document.getElementById('menu_selected').text

+0

यह एफएफ में 'टेक्स्ट सामग्री' और आईई – Amarghosh

+1

@ आर्मघोश में 'टेक्स्ट' होना चाहिए: यह आईई में 'आंतरिक टेक्स्ट' है, 'टेक्स्ट' केवल कुछ तत्वों पर लागू होता है। –

6

प्रयास करें आप LI तत्वों के अंदर HTML है और आप केवल पाठ प्राप्त करना चाहते हैं, तो आप innerText या textContent की जरूरत है।

var liEl = document.getElementById('menu_selected'); 
var txt = liEl["innerText" in liEl ? "innerText" : "textContent"]; 

इस सशर्त बयान हर बार का उपयोग कर से बचने के लिए, तो आप सिर्फ एक वैश्विक चर घोषित कर सकता है:

var textContentProp = "innerText" in document.body ? "innerText" : "textContent"; 
function getText() 
{ 
    return document.getElementById('menu_selected')[textContentProp]; 
} 
2

आप jQuery का उपयोग कर सकते हैं यह फोड़े नीचे

var text = $('#menu_selected').text(); 
संबंधित मुद्दे